Web service是一個平台獨立的,低耦合的,自包含的、基於可編程的web的應用程序,可使用開放的XML(標準通用標記語言下的一個子集)標準來描述、發布、發現、協調和配置這些應用程序,用於開發分散式的互操作的應用程序。

WebService服務介面會生成一個標準的wsdl文件,或者訪問一個URL地址可以查看WSDL信息。
WSDL:(Web服務描述語言,Web Services Description Language)是為描述Web服務發布的XML格式。
一般情況下,都是在客戶端進行調用服務端暴露出來的介面,那麼如何在瀏覽器中通過ajax的方式調用呢?
var data = ‘<soap:Envelope xmlns:soap=”http://schemas.xmlsoap.org/soap/envelope/”>’
+ ‘<soap:Header/>’
+ ‘<soap:Body>’
+ ‘<ns1:hello xmlns:ns1=”http://impl.server.ws.computech.com/”></ns1:hello>’
+ ‘</soap:Body>’
+ ‘</soap:Envelope>’;
$.ajax({
“type”: “POST”,
“async”: false,
“Content-Type”: “text/xml;charset=utf-8”,
“url”: “http://192.168.1.60:8080/yourApp/service/cmp”,
“dataType”: “xml”,
“data”: data,
“success”: function(response){
console.log(“success”);
},
“error”: function(e){
console.log(“error”);
}
});
SOAP:簡單對象訪問協議是交換數據的一種協議規範,是一種輕量的、簡單的、基於XML(標準通用標記語言下的一個子集)的協議,它被設計成在WEB上交換結構化的和固化的信息。
其實基於soap協議的webservice服務,它傳輸的消息是被soap進行了一層包裝,我們在進行post請求的時候,只要把完整的進行過soap包裝的消息發送出去就可以了。
如果此時,你就立即進行調用測試,瀏覽器調試控制台會報錯:
No ‘Access-Control-Allow-Origin’ header is present on the requested resource.
因為webservice是一種跨平台服務,因此在瀏覽器中使用就涉及到跨域的問題。為了解決此問題,你需要在暴露webservice服務的服務端進行一些設置。在伺服器返回給你的響應消息頭中,需要增加一下設置:
Access-Control-Allow-Origin:*,此設置表示允許所有外部請求調用,你也可以將*設置為具體的訪問地址。
好了,搞定了,盡情的使用吧。
原創文章,作者:投稿專員,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/216200.html
微信掃一掃
支付寶掃一掃