摘要:庫,工具創(chuàng)建注意里參數(shù)順序你的路徑,可以是或者本地文件注意參數(shù)順序創(chuàng)建創(chuàng)建個(gè)人喜歡形式,之后調(diào)用其它函數(shù)都是可以兩種方式實(shí)現(xiàn)的,若是異步形式,需要在你調(diào)用的函數(shù)名后添加。
庫,工具
node-soap
soapui
注意args里參數(shù)順序
const soap = require("soap"); let URL = "你的wsdl路徑,可以是url或者本地文件"; // 注意參數(shù)順序?。。。。。。。?! let args = { key1: val1, key2: val2 }; // promise創(chuàng)建 let client = await soap.createClientAsync(URL); // callback創(chuàng)建 soap.createClient(url, function(err, client) { client.MyFunction(args, function(err, result) { console.log(result); }); });
個(gè)人喜歡promise形式,之后調(diào)用其它函數(shù)都是可以兩種方式實(shí)現(xiàn)的,若是異步形式,需要在你調(diào)用的函數(shù)名后添加 "Async"。
調(diào)用參數(shù)數(shù)據(jù)只有一層沒什么特殊,如:
args = { key1: val1, key2: val2 }
若是參數(shù)里又套了一層,node-soap是不會(huì)根據(jù)wsdl自動(dòng)生成帶有namespace prefix的數(shù)據(jù),傳到服務(wù)器之后會(huì)解析xml失敗。
如:
let val2: Array= [ { key3: val3 } ]; let args = { key1: val1, key2: val2 }
這個(gè)時(shí)候就需要在傳入數(shù)據(jù)時(shí)做些額外工作,修改為:
let val2: Array= [ { key3: val3 } ]; let args = { key1: val1, key2: { dataType: val2 } }
上面這種dataType是生成xml時(shí),其類型在xml中有聲明;若是沒有聲明,就又是另一中寫法,如:
// dataType或namespace prefix在生成xml未聲明 let val2: Array= [ { key3: val3 } ]; let args = { key1: val1, key2: val2 }
需改寫為(此處用使用Array
let val2: Array= [ val3, val4 ]; let args = { attributes: { "xmlns:arr": "http://schemas.microsoft.com/2003/10/Serialization/Arrays" }, key1: val1, key2: { "arr:string": val2 } }
https://stackoverflow.com/que...
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/102183.html
摘要:它基于格式,在絕大多數(shù)情況下,使用協(xié)議傳輸請求。由它加密的文件可在所有支持的操作系統(tǒng)和處理器上進(jìn)行轉(zhuǎn)移。后話本文的描述及用語,僅基于本人目前的水平而寫,難免有所局限和措辭不當(dāng)之處。 原文鏈接:BlueSun | My Toolkit of Node.js Cheerio Fast, flexible, and lean implementation of core jQuery des...
摘要:它使用方式,接收和響應(yīng)外部系統(tǒng)的某種請求。回顧我們在學(xué)習(xí)基礎(chǔ)網(wǎng)絡(luò)編程章節(jié)已經(jīng)知道了這么一個(gè)連接了。使用指定名稱的命名空間。名詞簡單對象訪問協(xié)議作為一個(gè)基于語言的協(xié)議用于有網(wǎng)上傳輸數(shù)據(jù)。以的根元素出現(xiàn)。代理這么一個(gè)概念就更加清晰了。 WebService介紹 首先我們來談一下為什么需要學(xué)習(xí)webService這樣的一個(gè)技術(shù)吧.... 問題一 如果我們的網(wǎng)站需要提供一個(gè)天氣預(yù)報(bào)這樣一個(gè)需求...
摘要:啟動(dòng)后我們直接輸入項(xiàng)目地址指定的服務(wù)名會(huì)看到生成的。測試在這就不寫了,大家可以使用生成客戶端,或者直接使用發(fā)送格式數(shù)據(jù)進(jìn)行請求??偨Y(jié)使用集成開發(fā)很簡單,不用在單獨(dú)的部署到外部上,這為我們熟悉開發(fā)的同學(xué)帶了很好的體驗(yàn)。 1、寫在前面 WebService 對我來說既熟悉又陌生,已經(jīng)將近六七年沒有看到過他了, 具體的介紹我就不多少了, 想了解的百度百科下說的很詳細(xì)。 之所以突然研究WebS...
摘要:執(zhí)行結(jié)果如下中華田園犬測試我認(rèn)為所有使用協(xié)議的,都能使用測試。下面是我寫的測試代碼旺財(cái)需要增加一個(gè)包測試結(jié)果返回值如下中華田園犬寫法稍微有點(diǎn)麻煩的是,需要拼接請求參數(shù),參數(shù)少的話還好,多的話就很煩不過這種方法不用生成一大堆客戶端代碼。 經(jīng)過前段時(shí)間的學(xué)習(xí),已經(jīng)實(shí)現(xiàn)一個(gè)有返回值的spring-ws服務(wù),那接下來,就要試試能不能通過不同方式的調(diào)用,要實(shí)現(xiàn)一下幾種方式的測試: spring...
摘要:本文介紹如何在中開發(fā)接口,以及接口如何同時(shí)支持和兩種協(xié)議。該功能很簡單,就是通過一個(gè)人的姓名查詢這個(gè)人的詳細(xì)信息。就是關(guān)鍵,如本次請求報(bào)文如下就是,對應(yīng)。測試使用進(jìn)行測試,通過地址導(dǎo)入文件進(jìn)行測試。測試這樣就實(shí)現(xiàn)了和同時(shí)提供的目的。 介紹spring boot web模塊提供了RestController實(shí)現(xiàn)restful,第一次看到這個(gè)名字的時(shí)候以為還有SoapController,...
閱讀 2110·2023-04-26 00:09
閱讀 3139·2021-09-26 10:12
閱讀 3507·2019-08-30 15:44
閱讀 2874·2019-08-30 13:47
閱讀 935·2019-08-23 17:56
閱讀 3242·2019-08-23 15:31
閱讀 489·2019-08-23 13:47
閱讀 2527·2019-08-23 11:56