微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

node.js – 简单的soap调用失败(Nodejs,easysoap)

我有一些easysoap( https://npmjs.org/package/easysoap)的问题,我一直无法找到很多文档或人们谈论它,所以我希望你们中的一些人可以提供帮助:

我正在做一个这样简单的电话:

var clientParams = {
                           host    : 'somewhere.com',port    : '9001',path    : '/somews.asmx',wsdl    : '/somews.asmx?WSDL'
            };

            var clientOptions = {
                           secure : false 
            };

            //create new soap client
            var SoapClient = new soap.Client(clientParams,clientOptions);
            SoapClient.once('initialized',function() {

                           //successful initialized
                           SoapClient.once('soapMethod',function(data,header) {
                           });

                           console.log('call');

                           SoapClient.call({
                                           'method' : 'Execute','params' : {
                                                           'ExecuteXML' : 1
                                           }},function(attrs,err,responseArray,header){
                                           }
                           );
            });

            //initialize soap client
            SoapClient.init();

问题是我收到回复说我无权提出我的请求.但是如果我在浏览器http://somewhere.com:9001/somews.asmx中手动尝试相同的URL它确实有效.

你知道我做错了什么吗?

许多人提前感谢.

如果您有任何其他节点模块知道这一点,请告诉我.我尝试使用node-soap,但在所有需要的依赖项中丢失了:python,Visual Studio ……你真的需要所有这些来对服务器进行几次soap调用吗???

谢谢

解决方法

对于其他nodejs soap模块.我目前使用node-soap并对此感到满意.你可以找到项目 here.

这是我如何使用它的一个例子.

var soap = require('soap');
//example url
var url = 'http://ws.strikeiron.com/GlobalAddressverification5?WSDL';

var soapHeader = ''//xml string for header


soap.createClient(url,function(err,client){
  client.addSoapHeader(soapHeader);

  var args = {
    StreetAddressLines: "5322 otter Lane",CountrySpecificLocalityLine: "Middleberge FL 32068",Country: "USA"
  };

  client.BasicVerify(args,result){
   if(err){
     throw err;
   }
   console.log(result);
  });
});

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐