本篇文章主要介紹了Nodejs呼叫WebService的範例程式碼,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟著小編過來看看吧
這兩天一直在試著寫純靜態頁面的js去呼叫由Java編寫的WebService,一直無法成功(主要工期比較趕,待後面比較閒的時候再來研究,看能不能寫一個純靜態頁面的js去呼叫WebService的),最後沒有辦法只有改成Node JS去呼叫WebService。本想在網路上找一些資料,發現沒有讓人滿意的,最後還是只能去參考官網的文檔,結合自己的需求做了一個Client端的程序,希望對大家有所幫助。
首先來做前期準備工作,假設你已經安裝了nodejs,因為我沒有透過工程來設置,直接透過指令來實現,所以下面先來安裝需要用的nodejs的套件(如果通過工程的方式,可以設定package.json來實作)
指令如下
##
npm install soap npm install sinon npm install request npm install debug npm install lodash npm install soap npm install concat-stream npm install optional npm install ejs npm install xml-crypto npm install node-uuid npm install sax npm install strip-bom npm install selectn npm install mocha –save-dev安裝完這一部分的東西後就可以開始寫程式了。檔名myServer.js。 程式碼如下
var wsdlOptions ={ "overrdeRootElement":{ "namespace":"xmlns:tns", "xmlnsAttributes":[{ "name":"xmlns:ns", "value":"http://www.yourCompany.com" }] } }; var url='http://www.jb51.net/WebService/WebService?wsdl'; var soap=require('soap'); var args={'Param1':'value1','Param2':'value2'}; soap.createClient(url,wsdlOptions,function(err,client){ if(err!==null){ console.log(err); } // client.setSOAPAction(url); client.MyService(args,function(err,result){ if(err!==null){ console.log(err); } console.log (result); }); });透過指令
node myServer.js進行測試,得到的結果會根據服務端返回的數據,我這裡得到的是一個JSON數據.(會根據服務端返回的數據,我這裡得到的是一個JSON數據。
以上是Nodejs如何呼叫WebService的程式碼詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!