CNode

如何用node.js写soap的client端?

Kkevin0426发布于13 年前最后回复12 年前7 回复22308 浏览0 收藏

原来是用java写的,现在初学node.js,要改写。怎么弄啊,哪位大侠可以指点一下?原来的那个xml文档里面的内容要怎么写到args里面呢?还有Header里面的东西。 headers.setHeader("Content-Type","text/xml"); headers.setHeader("SOAPAction","http://xxx.com/runQuery");

文档太少了。用的是node.js v0.10.7和milewise的soap模块。

var soap = require('soap'); var url = 'http://xxx.com/xxx.asmx'; var args = {xxx:'abc'}; soap.createClient(url, function(err, client) { client.RunQuery(args, function(err, result) { console.log(result); }); });

报错: Error: Unexpected root element of WSDL or include at null. (/home/taxi/nodeapp/node_modules/soap/lib/wsdl.js:907:23) at EventEmitter.emit (events.js:98:17) at Parser.parse (/home/taxi/nodeapp/node_modules/soap/node_modules/node-expat/lib/node-expat.js:18:22) at WSDL._parse (/home/taxi/nodeapp/node_modules/soap/lib/wsdl.js:920:12) at WSDL._fromXML (/home/taxi/nodeapp/node_modules/soap/lib/wsdl.js:928:29) at /home/taxi/nodeapp/node_modules/soap/lib/wsdl.js:584:18 at process._tickCallback (node.js:415:13)

查看回复

回复 (7)

G
guoxy#1·13 年前

有可能是你的url写的不对

X
xianggp#2·13 年前

顶下

W
we2code#3·13 年前

好像没有必要自己写一个 https://npmjs.org/browse/keyword/soap

Z
zhaomaoxin#4·12 年前

时间过去一年了,不知楼主当时的node soap项目怎么样了,我现在遇到的项目是个老项目,也要soap,有一些问题希望能向楼主请教请教

A
a272121742#5·12 年前
D
dlutwuwei#6·12 年前

现在很多协议都比soap强,http也很好使,更不用说Hessian

参与回复
登录后即可参与回复。登录