Nodejs调用WebService的示例代码


Posted in NodeJs onSeptember 29, 2017

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

Nodejs调用WebService的示例代码 

首先来做前期准备工作,假设你已经安装了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 ?save-dev

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

代码如下

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

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

NodeJs 相关文章推荐
基于NodeJS的前后端分离的思考与实践(二)模版探索
Sep 26 NodeJs
Nodejs极简入门教程(三):进程
Oct 27 NodeJs
nodejs 提示‘xxx’ 不是内部或外部命令解决方法
Nov 20 NodeJs
Nodejs高扩展性的模板引擎 functmpl简介
Feb 13 NodeJs
详谈Angular路由与Nodejs路由的区别
Mar 05 NodeJs
搭建简单的nodejs http服务器详解
Mar 09 NodeJs
nodejs之get/post请求的几种方式小结
Jul 26 NodeJs
在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
Sep 19 NodeJs
nodejs实现获取本地文件夹下图片信息功能示例
Jun 22 NodeJs
nodejs文件夹深层复制功能
Sep 03 NodeJs
Nodejs文件上传、监听上传进度的代码
Mar 27 NodeJs
Nodejs+angularjs结合multiparty实现多图片上传的示例代码
Sep 29 #NodeJs
Nodejs实现文件上传的示例代码
Sep 26 #NodeJs
详解nodejs通过代理(proxy)发送http请求(request)
Sep 22 #NodeJs
使用vs code开发Nodejs程序的使用方法
Sep 21 #NodeJs
详解使用vscode+es6写nodejs服务端调试配置
Sep 21 #NodeJs
在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
Sep 19 #NodeJs
Nodejs中使用phantom将html转为pdf或图片格式的方法
Sep 18 #NodeJs
You might like
php中的登陆login
2007/01/18 PHP
php !function_exists("T7FC56270E7A70FA81A5935B72EACBE29"))代码解密
2011/01/07 PHP
php 模拟 asp.net webFrom 按钮提交事件的思路及代码
2013/12/02 PHP
codeigniter集成ucenter1.6双向通信的解决办法
2014/06/12 PHP
PHP+HTML+JavaScript+Css实现简单爬虫开发
2016/03/28 PHP
thinkphp5+layui实现的分页样式示例
2019/10/08 PHP
JavaScript 比较时间大小的代码
2010/04/24 Javascript
玩转jQuery按钮 请告诉我你最喜欢哪些?
2012/01/08 Javascript
原生javascript模仿win8等待提示圆圈进度条
2014/04/24 Javascript
jQuery实现的类似淘宝网站搜索框样式代码分享
2015/08/24 Javascript
详解Node.js:events事件模块
2016/11/24 Javascript
文件上传插件SWFUpload的使用指南
2016/11/29 Javascript
Javascript 实现放大镜效果实例详解
2016/12/03 Javascript
JavaScript中利用for循环遍历数组
2017/01/15 Javascript
微信小程序异步处理详解
2017/11/10 Javascript
Angular自定义组件实现数据双向数据绑定的实例
2017/12/11 Javascript
vue-router的HTML5 History 模式设置
2018/09/08 Javascript
深入理解react-router 路由的实现原理
2018/09/26 Javascript
解决vue 使用setTimeout,离开当前路由setTimeout未销毁的问题
2020/07/21 Javascript
JS闭包原理及其使用场景解析
2020/12/03 Javascript
运动检测ViBe算法python实现代码
2018/01/09 Python
django2用iframe标签完成网页内嵌播放b站视频功能
2018/06/20 Python
Python 装饰器@,对函数进行功能扩展操作示例【开闭原则】
2019/10/17 Python
Python高级特性之闭包与装饰器实例详解
2019/11/19 Python
Pytorch 多块GPU的使用详解
2019/12/31 Python
Python如何定义有可选参数的元类
2020/07/31 Python
详解pycharm自动import所需的库的操作方法
2020/11/30 Python
moosejaw旗下的户外商品促销网站:Mountain Steals
2017/02/27 全球购物
用你熟悉的语言写一个连接ORACLE数据库的程序,能够完成修改和查询工作
2012/06/11 面试题
护理专业优质毕业生自荐书
2014/01/31 职场文书
cf收人广告词
2014/03/14 职场文书
激励员工的口号
2014/06/16 职场文书
护士找工作求职信
2014/07/02 职场文书
初中国旗下的演讲稿
2014/08/28 职场文书
追悼会家属答谢词
2015/09/29 职场文书
win10蓝屏0xc0000001安全模式进不了怎么办?win10出现0xc0000001的解决方法
2022/08/05 数码科技