繁体   English   中英

尝试从Node.js获取信息SOAP时出错

[英]Error when trying to get information SOAP from Node.js

这在php上工作正常,但在node.js上却没有,我遇到以下错误(我为clientlink替换了实际服务,我不是节点专家,所以我不知道从哪里开始,谢谢对于一切!

正文:'\\ r \\ n \\ t \\ r \\ n \\ t \\ t \\ r \\ n \\ t \\ t \\ tsoap:服务器\\ r \\ n \\ t \\ t \\ t错误响应(来自clientlink / soap的代码500:<soap :Enve lope xmlns:soap =“ http://schemas.xmlsoap.org/soap/envelope/"><soa p:Body> <soap:Fault> <faultcode> soap:Client </ faultcode> <fa ultstring>解组错误:意外元素(uri:“ clientlink”,本地:“ callerIp”)。期望的元素是&lt; {} enterpriseActorId>,&lt; {} onBelhalfOfId>,&am p; {{} externalClientId>,&lt; {} callerIp>,&lt; {} actorId>,&lt; {} agencyIdLong>,&lt; {} onBehalfOfId>,&lt; {} applicationId>,&lt; {} actionId>,&lt; {} agencyId> </ faultstring> < / soap:Fault> </ soap:Body> </ soap:Envelope> \\ n \\ r \\ n \\ t \\ t \\ r \\ n \\ t \\ r \\ n'},

节点上的代码是:

var url = 'clientlink';
  var args = {
    "context": {
      "appToken": 'MEGATOKEN'
    },
    "version": 1.0
  };

soap.createClient(url, function(err, client) {
      if (err) {
        console.log(err);
        callback(err);
        return
      }
      client.getEvents(args, function(err, result) {
          if (err) {
            console.log(err);
            callback(err);
            return;
          }
          console.log(result);
      });
    });

php上的代码工作正常!

$soapClient = new SoapClient('clientlink');
$params['context']['appToken'] = 'MEGATOKEN';
$params['version'] =1.0;
$info = $soapClient->__call('getEvents', array($params));

感谢您阅读第二个谢谢!! :)

首先使用describe()查看可用的远程服务方法。

//...
soap.createClient(url, function(err, client) {
  if (err) {
    // ...
  } else {
    client.describe();
  }
});

这是client.describe()的输出示例:

{
  MyService: {
    MyPort: {
      getEvents: {
        input: {
          name: 'string'
        }
      }
    }
  }
}

然后,您可以像这样调用getEvents()

//...
soap.createClient(url, function(err, client) {
  if (err) {
    // ...
  } else {
    client.MyService.MyPort.getEvents({name: 'value'}, function(err, result) {
      // ...
    });
  }
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM