NODEJS SOAP: ссылка на объект не установлена ​​на экземпляр объекта - PullRequest
0 голосов
/ 24 апреля 2019

Я получил ошибку:

Ссылка на объект не установлена ​​для экземпляра объекта

Я что-то здесь упустил в запросе, но не смогпонять это.Любая помощь приветствуется.

Я пытался использовать модуль мыла, а также модуль сильного мыла, но в обоих случаях возникает одна и та же ошибка.Так что это может быть ошибка в аргументах запроса.

Ссылка на объект не установлена ​​на экземпляр объекта

Код:

"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: \n' + envelope);
        //'result' is the response body
        console.log('Result: \n' + JSON.stringify(result));

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

Любойпомощь будет оценена.Спасибо

1 Ответ

1 голос
/ 26 апреля 2019

Измените ваши аргументы на:

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