【转】Web services 生存期分析
调用 XML Web services 时的过程与进行常规方法调用时的过程类似。二者的主要区别在于,前者并不调用位于客户端应用程序中的方法,而是通过指定的传输(例如 HTTP)生成请求消息。由于 XML Web services 方法可能位于不同的计算机上,因此必须将 XML Web services 处理请求所需的信息通过网络传递给承载 XML Web services 的服务器。XML Web services 在处理完信息后,会通过网络将结果发送回客户端应用程序。
下面的插图显示了客户端与 XML Web services 之间的通信过程。
下面介绍调用 XML Web services 时的事件发生顺序:
- 客户端为 XML Web services 代理类创建一个新实例。此对象驻留在客户端计算机上。
- 客户端调用代理类上的方法。
- 客户端计算机上的基础结构将 XML Web services 方法的参数序列化为 SOAP 消息,然后通过网络将其发送给 XML Web services。
- 基础结构接收 SOAP 消息并反序列化 XML。它会创建实现 XML Web services 的类的实例,同时调用 XML Web services 方法并传入反序列化后的 XML 作为参数。
- XML Web services 方法将执行其代码,并最终设置返回值和所有输出参数。
- Web 服务器上的基础结构会将返回值和输出参数序列化为 SOAP 消息,然后通过网络将其发送回客户端。
- 客户端计算机上的 XML Web services 基础结构将接收 SOAP 消息,然后将 XML 反序列化为返回值和任何输出参数,并将它们传递给代理类的实例。
- 客户端接收返回值和所有输出参数。