调用WebService的本质原理

一次WebService调用其实并不是方法调用,而是发送SOAP消息,即xml文档片段。调用详细过程如下:

      
1、客户端将调用方法、参数,转换生成xml文档片段(SOAP消息,input消息),该文档片段必须符合wsdl定义的格式。

      
2、客户端通过网络将生成的xml文档片段传给服务器。

  
3、服务器接受到客户端发来的xml文档片段。

  
4、服务器解析xml文档片段,提取其中的数据,并将数据转换为调用WebService所需要的参数值。

  
5、服务器执行方法。

  
6、服务器将方法的执行结果再次转换为xml文档片段(SOAP消息,output消息),该文档片段必须符合wsdl定义的格式。

  
7、服务端通过网络将执行结果的xml文档片段通过网络发送给客户端。

  
8、客户端接收到执行结果的xml文档片段。

  
9、客户端解析执行结果的xml文档片段,提取其中的数据,并将数据转换为调用WebService的返回值。

  
从上面的调用本质上来看,方法的执行是在服务端,客户端只做发送xml、接收xml、解析xml。所以,一种语言支持WebService唯一的要求就是:该语言支持xml文档的解析、生成、网络传输。为什么WebService离不开xml呢?WebService的三个基础如下:

  
1、WSDL:Web Service Definition Language——WebService定义语言

  
2、SOAP:Simple Object Access Protocol——简单对象访问协议

  
3、UDDI:Universal Description Discovery and Integration——通用描述、发现与集成服务,是一种目录服务

  
其中的WSDL与SOAP都为xml,所以WebService离不开xml。

posted on 2019-05-31 12:10  欢笑一声  阅读(255)  评论(0)    收藏  举报

导航