式,以及怎样通过 HTTP 协议来使用 SOAP。SOAP 也是基于 XML 和 XSD 的,XML 是
SOAP 的数据编码方式。客户端和服务端之间的方法调用请求和结果返回值都放在这些消
息里。
XML 和 XSD
可扩展的标记语言(XML)是 Web service 平台中表示数据的基本格式。除了易于建立和易
于分析外,XML 主要的优点在于它既是平台无关的,又是厂商无关的。无关性是比技术优
越性更重要的。XML 解决了数据表示的问题,但它没有定义一套标准的数据类型,更没有
说怎么去扩展这套数据类型。例如,整形数到底代表什么?16 位,32 位,还是 64 位?
这些细节对实现互操作性都是很重要的。W3C 制定的 XML Schema(XSD)就是专门解决
这个问题的一套标准。它定义了一套标准的数据类型,并给出了一种语言来扩展这套数据
类型。Web
service 平台就是用 XSD 来作为其数据类型系统的。当用某种语言(如 VB.NET 或 C#)来
构造一个 Web service 时,为了符合 Web service 标准,所有使用的数据类型都必须被
转换为 XSD 类型。
WSDL(Web Services Description Language)
用于描述服务端所提供服务的 XML 格式。WSDL 文件里,描述了服务端提供的服务,提
供的调用方法,以及调用时所要遵循的格式,比如调用参数和返回值的格式等等。WSDL
很像 COM 编程里的 IDL(Interface Description Language),是服务器与客户端之间的
契约,双方必须按契约严格行事才能实现功能。
WSML(Web Services Meta Language)
用于描述 WSDL 里提供的方法与实现该方法的 COM 对象之间的映射关系。该文件是
Microsoft 的实现中特有的,不是 SOAP 标准的一部分。一般情况下,该文件只在服务端
存在。
3.Webservice 的技术特点
长项一: 跨防火墙的通信
如果应用程序有成千上万的用户,而且分布在世界各地,那么客户端和服务器之间的通信
将是一个棘手的问题。因为客户端和服务器之间通常会有防火墙或者代理服务器。在这种
情况下,使用 DCOM 就不是那么简单,通常也不便于把客户端程序发布到数量如此庞大的
每一个用户手中。传统的做法是,选择用浏览器作为客户端,写下一大堆 ASP 页面,把应
用程序的中间层暴露给最终用户。这样做的结果是开发难度大,程序很难维护。
举个例子,在应用程序里加入一个新页面,必须先建立好用户界面(Web 页面),并在这个
页面后面,包含相应商业逻辑的中间层组件,还要再建立至少一个 ASP 页面,用来接受用
户输入的信息,调用中间层组件,把结果格式化为 HTML 形式,最后还要把“结果页”送回
浏览器。要是客户端代码不再如此依赖于 HTML 表单,客户端的编程就简单多了。
评论0
最新资源