智能制造网

登录

紫金桥组态软件调用WebServices应用

发布时间:2012-11-02
浏览次数:1970
资料类型doc文件
下载次数239
上 传 人紫金桥软件技术有限公司
关 键 词紫金桥,WebServices,SOAP
资料大小316684
需要积分0
 
SOAP简介
简单对象访问协议(SOAP,全写为Simple Object Access Protocol)是交换数据的一种协议规范,使用在计算机网络Web服务(web service)中,交换带结构信息。SOAP为了简化网页服务器(Web Server)从XML数据库中提取数据时,节省去格式化页面时间,以及不同应用程序之间按照HTTP通信协议,遵从XML格式执行资料互换,使其抽象于语言实现、平台和硬件。
 
SOAP 封装(envelop),它定义了一个框架,描述消息中的内容是什么,是谁发送的,谁应当接受并处理它以及如何处理它们;
SOAP 编码规则(encoding rules),它定义了一种序列化的机制,用于表示应用程序需要使用的数据类型的实例;
SOAP RPC表示(RPC representation),它定义了一个协定,用于表示远程过程调用和应答;
SOAP 绑定(binding),它定义了SOAP使用哪种协议交换信息。使用HTTP/TCP/UDP协议都可以。
 
传输方式
SOAP使用因特网应用层协议作为其传输协议。SMTP以及HTTP协议都可以用来传输SOAP消息,但是由于HTTP在如今的因特网结构中工作得很好,特别是在网络防火墙下仍然正常工作,所以被广泛采纳。SOAP亦可以在HTTPS上传输。
SOAP的消息格式采用XML。
语法规则
SOAP 消息必须用 XML 来编码
SOAP 消息必须使用 SOAP Envelope 命名空间
SOAP 消息必须使用 SOAP Encoding 命名空间
SOAP 消息不能包含 DTD 引用
SOAP 消息不能包含 XML 处理指令
SOAP 消息实例
请求
<soapenv:Envelope
    xmlns:soapenv="/soap/envelope/"
    xmlns:xsd="/2001/XMLSchema"
    xmlns:xsi="/2001/XMLSchema-instance">
 <soapenv:Body>
    <req:echo xmlns:req="http://localhost:8080/axis2/services/MyService/">
      <req:category>classifieds</req:category>
    </req:echo>
 </soapenv:Body>
</soapenv:Envelope>
回应
<soapenv:Envelope
    xmlns:soapenv="/soap/envelope/"
    xmlns:wsa="/ws/2004/08/addressing">
 <soapenv:Header>
    <wsa:ReplyTo>
      <wsa:Address>/ws/2004/08/addressing/role/anonymous</wsa:Address>
    </wsa:ReplyTo>
    <wsa:From>
      <wsa:Address>http://localhost:8080/axis2/services/MyService</wsa:Address>
    </wsa:From>
    <wsa:MessageID>ECE5B3F187F29D28BC11433905662036</wsa:MessageID>
 </soapenv:Header>
 <soapenv:Body>
    <req:echo xmlns:req="http://localhost:8080/axis2/services/MyService/">
      <req:category>classifieds</req:category>
    </req:echo>
 </soapenv:Body>
</soapenv:Envelope>
 
紫金桥与SOAP通讯
本次应用具体情况如下图所示:
 
客户端用户向紫金桥实时数据库发送令牌Token请求,紫金桥实时数据库接收到令牌请求后,通过SOAP协议向令牌验证服务器请求令牌验证,令牌验证服务器根据令牌信息返回此令牌对应用户名。紫金桥实时数据库根据用户名验证此用户权限,根据权限不同返回不同的应用画面。