【问题标题】:How to format args JSON to get SOAP response?如何格式化 args JSON 以获得 SOAP 响应?
【发布时间】:2017-06-01 10:25:15
【问题描述】:

下面是我试过的代码:

fetchUserDetails: function () {
    var url = 'http://ldniguiapp02.eur.ad.tullib.com/matchbox-forwarddeal/services/RefDataWebServices?wsdl';
    var args = {'args0':
        {
            'mnemonic':'ttan',
            'postingId':'75655',
            'customerId':'180816',
            'organisation':{
                'customerId':'180816',
                'firmName':'POLITICAL.GROUP'
            },
            'userType':'TRADER'
        }};
    var defered = q.defer();
    soap.createClient(url, CreateClient);
    function CreateClient(err, client) {
        client.getUserDetails(args, function (err, result) {
            if (err) {
                defered.reject(err);
            }else{
                defered.resolve(result);
            }
            console.log(result);
        });
    }
    return defered.promise;
}

来自 SOAP UI 的等效 SOAP 请求如下所示:

如何格式化 args json 以获得预期的结果?

【问题讨论】:

    标签: node.js soap protractor soapui


    【解决方案1】:

    你应该在 xml 中转换你的 json

    在这里您可以在线进行(检查/验证/测试)http://convertjson.com/json-to-xml.htm

    当然还有一个 npm 模块可以做到这一点:

    https://www.npmjs.com/package/jsontoxml

    ...
    var jsonxml = require('jsontoxml');
    
    var xmlArgs = jsonxml(args);
    ...
    client.getUserDetails(xmlArgs, function (err, result) {
    ...
    })
    ...
    

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-18
      • 1970-01-01
      • 2014-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-12
      • 1970-01-01
      相关资源
      最近更新 更多