Javascript 从Node.js调用SOAP服务
我刚刚开始使用Node.js,我正在尝试使用Node-SOAP扩展使用一个SOAP服务。我现在正在使用一个示例服务调用,但似乎无法启动并运行它Javascript 从Node.js调用SOAP服务,javascript,node.js,web-services,soap,Javascript,Node.js,Web Services,Soap,我刚刚开始使用Node.js,我正在尝试使用Node-SOAP扩展使用一个SOAP服务。我现在正在使用一个示例服务调用,但似乎无法启动并运行它 var soap = require('soap'); var fs = require('fs'); reqURL = fs.readFile('www.webservicex.net/stockquote.asmx?WSDL', 'UTF-8', function(err, data){ if(err) console.log(err)
var soap = require('soap');
var fs = require('fs');
reqURL = fs.readFile('www.webservicex.net/stockquote.asmx?WSDL', 'UTF-8', function(err, data){
if(err) console.log(err)
soap.createClient(data, function(err, client){
client.StockQuote.StockQuoteSoap.GetQuote({symbol:'NKE'}, function(err, response){
if(err) console.log(err);
console.log(response);
});
console.log('Here is the SOAP sent to ' + data + client.lastrequest);
});
});
以下是我得到的错误:
{ [Error: ENOENT, open 'c:\dev\workspace\WebDevClass\node\www.webservicex.net\st
ockquote.asmx?WSDL']
errno: -4058,
code: 'ENOENT',
path: 'c:\\dev\\workspace\\WebDevClass\\node\\www.webservicex.net\\stockquote.
asmx?WSDL' }
fs.js:491
binding.open(pathModule._makeLong(path),
^
TypeError: path must be a string
at TypeError (native)
at Object.fs.open (fs.js:491:11)
at Object.fs.readFile (fs.js:262:6)
at open_wsdl (c:\dev\workspace\WebDevClass\node\node_modules\soap\lib\wsdl.j
s:1832:8)
at _requestWSDL (c:\dev\workspace\WebDevClass\node\node_modules\soap\lib\soa
p.js:31:5)
at Object.createClient (c:\dev\workspace\WebDevClass\node\node_modules\soap\
lib\soap.js:48:3)
at c:\dev\workspace\WebDevClass\node\cliSoapTest.js:6:14
at fs.js:263:20
at FSReqWrap.oncomplete (fs.js:95:15)
试试这个
var soap = require('soap');
var url = 'www.webservicex.net/stockquote.asmx?WSDL'
reqURL = soap.createClient(url, function(err, client){
client.StockQuote.StockQuoteSoap.GetQuote({symbol:'NKE'}, function(err, response){
if(err) console.log(err);
console.log(response);
});
});
});
试试这个
var soap = require('soap');
var url = 'www.webservicex.net/stockquote.asmx?WSDL'
reqURL = soap.createClient(url, function(err, client){
client.StockQuote.StockQuoteSoap.GetQuote({symbol:'NKE'}, function(err, response){
if(err) console.log(err);
console.log(response);
});
});
});
试试这个
var soap = require('soap');
var url = 'www.webservicex.net/stockquote.asmx?WSDL'
reqURL = soap.createClient(url, function(err, client){
client.StockQuote.StockQuoteSoap.GetQuote({symbol:'NKE'}, function(err, response){
if(err) console.log(err);
console.log(response);
});
});
});
试试这个
var soap = require('soap');
var url = 'www.webservicex.net/stockquote.asmx?WSDL'
reqURL = soap.createClient(url, function(err, client){
client.StockQuote.StockQuoteSoap.GetQuote({symbol:'NKE'}, function(err, response){
if(err) console.log(err);
console.log(response);
});
});
});
看看这个
var soap = require("soap");
var url = 'http://www.webservicex.net/stockquote.asmx?WSDL';
reqURL = soap.createClient(url, function(err, client){
if(err) {
console.log(err);
return;
}
client.StockQuote.StockQuoteSoap.GetQuote({symbol:'NKE'}, function(err, response){
if(err) {
console.log(err);
return;
}
console.log(response);
});
});
看看这个
var soap = require("soap");
var url = 'http://www.webservicex.net/stockquote.asmx?WSDL';
reqURL = soap.createClient(url, function(err, client){
if(err) {
console.log(err);
return;
}
client.StockQuote.StockQuoteSoap.GetQuote({symbol:'NKE'}, function(err, response){
if(err) {
console.log(err);
return;
}
console.log(response);
});
});
看看这个
var soap = require("soap");
var url = 'http://www.webservicex.net/stockquote.asmx?WSDL';
reqURL = soap.createClient(url, function(err, client){
if(err) {
console.log(err);
return;
}
client.StockQuote.StockQuoteSoap.GetQuote({symbol:'NKE'}, function(err, response){
if(err) {
console.log(err);
return;
}
console.log(response);
});
});
看看这个
var soap = require("soap");
var url = 'http://www.webservicex.net/stockquote.asmx?WSDL';
reqURL = soap.createClient(url, function(err, client){
if(err) {
console.log(err);
return;
}
client.StockQuote.StockQuoteSoap.GetQuote({symbol:'NKE'}, function(err, response){
if(err) {
console.log(err);
return;
}
console.log(response);
});
});
我不太明白你为什么在这里使用fs.readFile。。。您不应该发送HTTP请求吗?你得到的错误只是说这个文件不存在。我从一个博客示例中得到这个,我更改了文件名。我明白你的意思,但我不知道如何修复它以合并http调用而不是文件系统调用,我不太明白为什么在这里使用fs.readFile。。。您不应该发送HTTP请求吗?你得到的错误只是说这个文件不存在。我从一个博客示例中得到这个,我更改了文件名。我明白你的意思,但我不知道如何修复它以合并http调用而不是文件系统调用,我不太明白为什么在这里使用fs.readFile。。。您不应该发送HTTP请求吗?你得到的错误只是说这个文件不存在。我从一个博客示例中得到这个,我更改了文件名。我明白你的意思,但我不知道如何修复它以合并http调用而不是文件系统调用,我不太明白为什么在这里使用fs.readFile。。。您不应该发送HTTP请求吗?你得到的错误只是说这个文件不存在。我从一个博客示例中得到这个,我更改了文件名。我明白您的意思,但我不知道如何修复它以合并http调用而不是文件系统调用为什么您的解决方案解决了这个问题?解释你的代码(在你的答案中),这样其他用户也会发现它很有用。为什么你的解决方案能解决这个问题?解释你的代码(在你的答案中),这样其他用户也会发现它很有用。为什么你的解决方案能解决这个问题?解释你的代码(在你的答案中),这样其他用户也会发现它很有用。为什么你的解决方案能解决这个问题?解释你的代码(在你的答案中),这样其他用户也会发现它很有用。