关于 Web Service 的一些总结,一些理解
1,什么是 Web Service ?
Web Service 就是一个网络组件(一个可以通过网络访问的程序)。
它有一个或多个端口(Port),这些端口用于接收客户端的请求,并返回响应
请求和响应的 都是一种基于XML的消息。
不过这种消息遵循特定的格式(SOAP )。
2,怎样调用 Web Service?
可能这样说不太准确,应该是“怎样调用Web Service中定义的操作 ”
每个Web Service 都有一个描述文件(WSDL ),
它描述 一个 Web Service 的如下方面:
(1)服务的端口(接收SOAP消息的端口)
(2)服务提供的操作
(3)操作的输入输出格式的定义(通过XMLSchema 定义输入输出格式)
有了Web Service 的描述文件(WSDL ),我们就知道怎样调用这个Web Service 中定义的操作了。
(1)通过服务提供的操作找到你想调用的操作
(2)找到这个操作的输入格式的定义(XMLSchema ),按照这种输入格式构造一个SOAP消息
(3)将这个SOAP消息发送到服务的指定端口
(4)准备接收一个从Web Service服务器返回的 SOAP 响应吧 !
3,Web Service服务器
一个Web Service服务器,本质上和一个Web服务器是相同的。
它主要做下面这些事:
--> 监听网络端口(监听服务端口)
--> 接收客户端请求(接收SOAP请求)
--> 解析客户端请求(解析SOAP消息,将SOAP消息转换为数据对象)
--> 调用业务逻辑 (调用Web Service实现类的特定操作,参数是由SOAP消息
转换而来的数据对象)
--> 生成响应 (将返回值转换为SOAP消息)
--> 返回响应 (返回SOAP响应)
4,Web Service客户端
一个Web Service客户端,顾名思义是和一个Web Service服务器进行交互。
下面是一个Web Service客户端调用Web Service的基本过程。
--> 构造SOAP请求消息(将本地数据对象转换为SOAP消息)
--> 发送SOAP消息到Web Service服务器的指定端口
--> 接收SOAP响应消息
--> 将SOAP响应消息转换为本地数据对象
其实大部分Web Service客户端 都不需要我们来编写,很多Web Service框架
都支持由 Web Service 的描述文件(WSDL)自动生成客户端。