NODEJS SOAP:未将对象引用设置为对象的实例

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了NODEJS SOAP:未将对象引用设置为对象的实例相关的知识,希望对你有一定的参考价值。

我收到一个错误:

你调用的对象是空的

我在请求中遗漏了一些东西,但无法理解。任何帮助表示赞赏。

我尝试使用soap模块以及strong-soap模块,但两者都出现相同的错误。所以它可能是请求参数中的错误。

你调用的对象是空的

码:

"use strict";

var soap = require('strong-soap').soap;

var url = 'http://test.eprabhu.com/Api/Utility.svc?wsdl&UserName=CLIENT';
var requestArgs = {
    'UserName': 'CLIENT',
    'Password': 'CLIENT12',
    'OperatorCode': 2,
    'MobileNumber': '9803111111',
    'Amount': 100,
    'PartnerTxnId': 'P201904220218335187'
};

var options = {
  'user-agent': 'sampleTest',
  'Content-Type': 'text/xml;charset=UTF-8',
  // 'soapAction': 'http://test.eprabhu.com/Api/Utility.svc?wsdl#MobileTopup',
  'soapAction': 'http://tempuri.org/IUtility/MobileTopup'
};

soap.createClient(url, options, function(err, client) {

    var method = client['MobileTopup'];
    method(requestArgs, function(err, result, envelope, soapHeader) {
        //response envelope
        console.log('Response Envelope: 
' + envelope);
        //'result' is the response body
        console.log('Result: 
' + JSON.stringify(result));

        console.log('Soap Header: 
', soapHeader);
    });
});

任何帮助将不胜感激。谢谢

答案

将你的args改为:

var requestArgs = {
  MobileTopupRequest: {
    UserName: 'CLIENT',
    Password: 'CLIENT12',
    OperatorCode: 2,
    MobileNumber: '9803111111',
    Amount: 1,
    PartnerTxnId: 'P201904220218335187'
  }
};

以上是关于NODEJS SOAP:未将对象引用设置为对象的实例的主要内容,如果未能解决你的问题,请参考以下文章

PHP 服务器在未将对象引用设置为对象实例时出现 C# Soap 客户端错误

未将对象引用设置到对象的实例都可能由哪些原因引起的

求助:EF 未将对象引用设置到对象的实例

未将对象引用设置到对象的实例

未将对象引用设置到对象的实例

sql未将对象引用设置到对象的实例怎么解决