电脑故障

位置:IT落伍者 >> 电脑故障 >> 浏览文章

学好基本功之熟练调用 Web Service


发布日期:2021/1/3
 

什么是Web Services

从表面上看Web service 就是一个应用程序它向外界暴露出一个能够通过Web进行调用的API也就是说可以利用编程的方法通过Web来调用这个应用程序

对Web service 更精确的解释: Web services是建立可互操作的分布式应用程序的新平台Web service平台是一套标准它定义了应用程序如何在Web上实现互操作性你可以用任何你喜欢的语言在任何你喜欢的平台上写Web service 只要我们可以通过Web service标准对这些服务进行查询和访问

不管你的Web service是用什么工具什么语言写出来的只要你用SOAP协议通过HTTP来调用它总体结构都一致通常你用你自己喜欢的语言(如VB 或者VBNET)来构建你的Web service然后用SOAP Toolkit或者NET的内建支持来把它暴露给Web客户于是任何语言任何平台上的客户都可以阅读其WSDL文档以调用这个Web service客户根据WSDL描述文档会生成一个SOAP请求消息Web service都是放在Web服务器 (如IIS) 后面的客户生成的SOAP请求会被嵌入在一个HTTP POST请求中发送到Web服务器来Web服务器再把这些请求转发给Web service请求处理器请求处理器的作用在于解析收到的SOAP请求调用Web service然后再生成相应的SOAP应答Web服务器得到SOAP应答后会再通过HTTP应答的方式把它送回到客户端

基本概念

SOAP

XML和XSD

WSDL(Web Services Description Language)

WSML(Web Services Meta Language)

什么时候使用Web Services

Web service是创建可互操作的分布式应用程序的新平台Web service 的主要目标是跨平台的可互操作性为了达到这一目标Web service 是完全基于XMLXSD等独立于平台独立于软件供应商的标准的

Web service在应用程序跨平台和跨网络进行通信的时候是非常有用的Web service适用于应用程序集成BB集成代码和数据重用以及通过Web进行客户端和服务器的通信的场合

当然Web service也不是万能的你不能到处滥用Web service在有些情况下Web service 会降低应用程序的性能而不会带来任何好处例如一台机器或一个局域网里面运行的同构应用程序就不应该用Web service 进行通信

如何调用Web Services

客户端:取得服务端的服务描述文件WSDL解析该文件的内容了解服务端的服务信息以及调用方式根据需要生成恰当的SOAP请求消息(指定调用的方法已经调用的参数)发往服务端等待服务端返回的SOAP回应消息解析得到返回值

服务端:生成服务描述文件以供客户端获取接收客户端发来的SOAP请求消息解析其中的方法调用和参数格式根据WSDL和WSML的描述调用相应的COM对象来完成指定功能并把返回值放入SOAP回应消息返回给用户

高层接口

使用高层接口不需要知道SOAP和XML的任何信息就可以生成和使用一个WebServiceSoap Toolkit 通过提供两个COM对象――SoapClient和SoapServer来完成这些功能

在客户端只需要生成一个SoapClient实例并用WSDL作为参数来调用其中的mssoapinit方法SoapClient对象会自动解析WSDL文件并在内部生成所有Web Service的方法和参数信息之后你就可以像调用IDispatch接口里的方法一样调用里面所有的方法在VB或是脚本语言里你甚至可以直接在SoapClient对象名后面直接加上方法(参数…)进行调用

低层接口

要使用低层接口你必须对SOAP和XML有所了解你可以对SOAP的处理过程进行控制特别是要做特殊处理的时候

在客户端首先要创建一个HttpConnector对象负责HTTP连接设定Connector的一些头部信息比如EndPoinURL和SoapAction等如果网络连接需要使用代理服务器那也要在这里设定相关的信息接着创建SoapSerializer对象用于生成Soap消息按照WSDL里定义把所有参数按顺序序列化得到一个完整的SOAP请求消息该Soap消息作为Payload通过HttpConnector被发送到服务端最后生成一个SoapReader对象负责读取服务端返回的SOAP消息取得其中的返回值

上一篇:安装/初始化/个性化DotNetNuke

下一篇:Session共享的解决方案