產(chǎn)品搜索
請(qǐng)輸入產(chǎn)品關(guān)鍵字:
聯(lián)系方式
郵編:310012
聯(lián)系人:采購(gòu)部
留言:在線留言
商鋪:http://towegas.com/st1318/
資料下載
紫金橋組態(tài)軟件調(diào)用WebServices應(yīng)用
最近更新時(shí)間:2012-11-2
提 供 商:紫金橋軟件技術(shù)有限公司資料大?。?/span>309.3KB
文件類型:WORD 文檔下載次數(shù):246次
資料類型:未知文件瀏覽次數(shù):2014次
SOAP簡(jiǎn)介
簡(jiǎn)單對(duì)象訪問協(xié)議(SOAP,全寫為Simple Object Access Protocol)是交換數(shù)據(jù)的一種協(xié)議規(guī)范,使用在計(jì)算機(jī)網(wǎng)絡(luò)Web服務(wù)(web service)中,交換帶結(jié)構(gòu)信息。SOAP為了簡(jiǎn)化網(wǎng)頁(yè)服務(wù)器(Web Server)從XML數(shù)據(jù)庫(kù)中提取數(shù)據(jù)時(shí),節(jié)省去格式化頁(yè)面時(shí)間,以及不同應(yīng)用程序之間按照HTTP通信協(xié)議,遵從XML格式執(zhí)行資料互換,使其抽象于語言實(shí)現(xiàn)、平臺(tái)和硬件。
SOAP 封裝(envelop),它定義了一個(gè)框架,描述消息中的內(nèi)容是什么,是誰發(fā)送的,誰應(yīng)當(dāng)接受并處理它以及如何處理它們;
SOAP 編碼規(guī)則(encoding rules),它定義了一種序列化的機(jī)制,用于表示應(yīng)用程序需要使用的數(shù)據(jù)類型的實(shí)例;
SOAP RPC表示(RPC representation),它定義了一個(gè)協(xié)定,用于表示遠(yuǎn)程過程調(diào)用和應(yīng)答;
SOAP 綁定(binding),它定義了SOAP使用哪種協(xié)議交換信息。使用HTTP/TCP/UDP協(xié)議都可以。
傳輸方式
SOAP使用因特網(wǎng)應(yīng)用層協(xié)議作為其傳輸協(xié)議。SMTP以及HTTP協(xié)議都可以用來傳輸SOAP消息,但是由于HTTP在如今的因特網(wǎng)結(jié)構(gòu)中工作得很好,特別是在網(wǎng)絡(luò)防火墻下仍然正常工作,所以被廣泛采納。SOAP亦可以在HTTPS上傳輸。
SOAP的消息格式采用XML。
語法規(guī)則
SOAP 消息必須用 XML 來編碼
SOAP 消息必須使用 SOAP Envelope 命名空間
SOAP 消息必須使用 SOAP Encoding 命名空間
SOAP 消息不能包含 DTD 引用
SOAP 消息不能包含 XML 處理指令
SOAP 消息實(shí)例
請(qǐng)求
<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>
回應(yīng)
<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通訊
本次應(yīng)用具體情況如下圖所示:
客戶端用戶向紫金橋?qū)崟r(shí)數(shù)據(jù)庫(kù)發(fā)送令牌Token請(qǐng)求,紫金橋?qū)崟r(shí)數(shù)據(jù)庫(kù)接收到令牌請(qǐng)求后,通過SOAP協(xié)議向令牌驗(yàn)證服務(wù)器請(qǐng)求令牌驗(yàn)證,令牌驗(yàn)證服務(wù)器根據(jù)令牌信息返回此令牌對(duì)應(yīng)用戶名。紫金橋?qū)崟r(shí)數(shù)據(jù)庫(kù)根據(jù)用戶名驗(yàn)證此用戶權(quán)限,根據(jù)權(quán)限不同返回不同的應(yīng)用畫面。