欢迎来到代码驿站!

NodeJS

当前位置:首页 > 脚本语言 > NodeJS

Nodejs调用WebService的示例代码

时间:2021-02-05 09:39:51|栏目:NodeJS|点击:

这两天一直在试着编写纯静态页面的js去调用由Java编写的WebService,一直无法成功(主要工期比较赶,待后面比较闲的时候再来研究,看能不能写一个纯静态页面的js去调用WebService的),最后 没有办法只有改成Node JS去调用WebService。本想在网上找一些资料,发现没有让人满意的,最后还是只能去参考官网的文档,结合自己的需求做了一个Client端的程序,希望对大家有所帮助。

这里写图片描述 

首先来做前期准备工作,假设你已经安装了nodejs,因为我没有通过工程来设置,直接通过命令来实现,所以下面先来安装需要用的nodejs的包(如果通过工程的方式,可以配置package.json来实现)

命令如下

npm install soap 
npm install sinon 
npm install request 
npm install debug 
npm install lodash 
npm install soap 
npm install concat-stream 
npm install optional 
npm install ejs 
npm install xml-crypto 
npm install node-uuid 
npm install sax 
npm install strip-bom 
npm install selectn 
npm install mocha ?Csave-dev

安装完这一部分的东西后就可以开始写代码了。文件名myServer.js。

代码如下

var wsdlOptions ={
  "overrdeRootElement":{
    "namespace":"xmlns:tns",
    "xmlnsAttributes":[{
        "name":"xmlns:ns",
        "value":"http://www.yourCompany.com"
    }]
  }
};

var url='https://www.jb51.net/WebService/WebService?wsdl';

var soap=require('soap');

var args={'Param1':'value1','Param2':'value2'};
soap.createClient(url,wsdlOptions,function(err,client){
if(err!==null){
console.log(err);
}
// client.setSOAPAction(url);
client.MyService(args,function(err,result){
if(err!==null){
console.log(err);
}
console.log
(result);
});

});

通过命令

node myServer.js

进行测试,得到的结果会根据服务端返回的数据,我这里得到的是一个JSON数据.(会根据服务端返回的数据,我这里得到的是一个JSON数据。

注意:https://www.jb51.net替换成自己的服务的命名空间,var url='https://www.jb51.net/WebService/WebService?wsdl';替换成自己的服务地址,args参数最好不要用new Array()来创建,采用JSON数据,参数数量更具实际需要进行设置。最后,如果要在浏览器上运行,还要解决安全性问题才能正常使用。

上一篇:node 标准输入流和输出流代码实例

栏    目:NodeJS

下一篇:node.js的exports、module.exports与ES6的export、export default深入详解

本文标题:Nodejs调用WebService的示例代码

本文地址:http://www.codeinn.net/misctech/57657.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有