时间:2021-05-26
这两天一直在试着编写纯静态页面的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 –save-dev安装完这一部分的东西后就可以开始写代码了。文件名myServer.js。
代码如下
var wsdlOptions ={ "overrdeRootElement":{ "namespace":"xmlns:tns", "xmlnsAttributes":[{ "name":"xmlns:ns", "value":"http://" }] }};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数据,参数数量更具实际需要进行设置。最后,如果要在浏览器上运行,还要解决安全性问题才能正常使用。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
之前调用WebService都是直接添加服务引用,然后调用WebService方法的,最近发现还可以使用Http请求调用WebService。这里还想说一句,还
作为开发者来讲,要想写webservice接口或者调用别人的webservice接口,首先需要了解什么是webservice。简单说,WebService就是一
Java调用天气Webservice的小应用废话不多说,直接贴代码:CityReq.javapackagecom.weather;importjavax.xml
mongodb操作的模块手动封装[注]:这些代码都是基于nodejs进行的.在nodejs目录下创建一个模块文件*.js,以便调用,以下是模块代码:functi
用jQuery调用其他项目的WebService实现登录验证功能html输入用户名密码:代码复制代码代码如下:LoginID:LoginPassword:Jqu