概述ASP.NET XML Web服务 |
本文标签:XML Web服务 ASP.NET ASP.NET XML Web服务基础结构 XML Web服务基础结构创建在使用遵循一个公布的服务描述的基于XML的消息的通信的基础上 。服务描述是一个使用WSDL语言的XML语法编写的XML文档,定义了XML Web服务能理解的XML Web服务消息格式 。服务描述起一个协定的作用,用来定义一个XML Web服务的行为并且指示潜在的客户如何与之交互 。XML Web服务的行为取决于服务定义和支持的消息类型 。 这些模式在概念上指示了服务使用者在相应格式的消息被发送到XML Web服务时可以期待什么 。 例如,与远程过程调用(RPC)风格的服务关联的请求/响应模式将定义哪个SOAP消息模式用来调用一个特定的方法 。这个模式还将定义响应SOAP消息将遵循的格式 。 消息模式的另一个例子表示单方面的交互操作 。这个模式在单向通信发生的时候被使用 。在这种情况下,发送方不会从XML Web服务中接收任何消息,包括故障消息 。 定义SOAP消息格式的模式可以在内部定义来进行实际的服务描述,它们也可以在外部定义并被导入服务描述 。 除了消息格式的定义和消息模式以外,服务描述还可选择性的包含每个XML Web服务入口点的地址 。这个地址的格式对应于用于访问服务的协议,例如URL对应于HTTP或者电子邮件地址对应于SMTP(简单邮件传送协议) 。 更多WSDL规格的信息,请看W3C Web站点(http://www.w3.org/TR/wsdl) 。 ASP.NET XML Web服务连接格式 象DCOM那样的二进制协议由一个去掉专有的通信协议的顶部的方法请求层组成 。这样的协议对创建普遍可用的XML Web服务没有帮助 。这么说并不是说阻止你们在XML Web服务方案中使用这样的协议,但是使用它们的缺点在于这样的协议依靠它们的底层系统的特定结构,因此限制了潜在客户的增加 。 取而代之,你可以构造XML Web服务来协同一个或多个开放协议一起工作,就象HTTP和SOAP的综合使用一样 。象你所料想的那样,基础结构要求支持不同的协议 。 XML Web服务不局限于提供远程过程调用访问 。它们还可以被构造来交换结构化的信息,例如采购订单和发货单,并且还可用于自动化和连接内部与外部的业务处理 。 HTTP-GET和HTTP-POST HTTP-GET和HTTP-POST是使用HTTP的标准协议动词,用于编码和传送变量名/变量值对参数,并且使用相关的请求语义 。每个HTTP-GET和HTTP-POST都由一系列HTTP请求头组成,这些请求头定义了客户端从服务器请求了什么,而响应则是由一系列HTTP应答头和应答数据组成,如果请求成功则返回应答 。 HTTP-GET以使用MIME类型application/x-www-form-urlencoded的urlencoded文本的格式传递参数 。Urlencoding是一种字符编码,保证被传送的参数由遵循规范的文本组成,例如一个空格的编码是"%20" 。附加参数还能被认为是一个查询字符串 。 与HTTP-GET类似,HTTP-POST参数也是被URL编码的 。然而,变量名/变量值不作为URL的一部分被传送,而是放在实际的HTTP请求消息内部被传送 。以上介绍ASP.NET XML Web服务 。 |