2017-08-30 66 views
0

我最近使用npm的soap設置了一個soapClient,但是它的操作方式與之前的SOAP調用相同,現在不起作用。在節點npm soap - > ErrLog:在每個Compass實例上失敗

我SOAP調用看起來像:

const url = "http://.....................?WSDL"; 

const service = 'ServiceName'; 

let args = { 
    request: { 
    a: 'some value', 
    b: 0101, 
    c: 1010, 
    d: 'brand' 
    } 
}; 

soap.createClient(url, function(err, soapClient) { 
    if (err) console.log('Error @ creatClient') 

    soapClient[service](args, function(err, result) { 
    if(err) console.log('Error @ soap service: ', err) 
    console.log('response: ', result) 
    }) 
}) 

argsrequest嵌套,以反映的方式,原來的XML是什麼樣子。沒有嵌套數據,我得到Object reference not set to an instance of an object.錯誤。但是我當前的代碼(築巢)讓我:

response: 
{ 
    ServiceName: { 
    ErrLog: 'Failed on each [App] instance. [App] http://..... got back error: [App] http://..... got back error: [App] http://.... got back error:', 
    result: false 
    } 
} 

的目標是:在result鍵得到true。任何有關錯誤的反饋都將不勝感激。

回答

0

你可以只使用soapClient[service](args['request'], function(err, result) {

+0

你的建議是一樣的,如果我突出部分通過扁平參數對象:然後我得到不設置到object'錯誤的實例 – jaimefps

+0

請參閱HTTPS的'對象引用:/ /stackoverflow.com/questions/5083100/object-reference-not-set-to-an-instance-of-an-object?rq=1 – turmuka

+0

@JaimePericas嘗試'JSON.stringify(args ['request'])'let我知道,我等着 – turmuka