我有一个SOAP web服务,我需要从node.js应用程序中读取并决定使用vpulim/node-soap
当我使用SOAP客户端时,Web服务可以正常工作,但我无法让它在node.js应用程序上运行。我收到以下错误消息:
Error: getaddrinfo ENOTFOUND www.xxxxxxx.intra.com.mt www.xxxxxxx.intra.gov.mt:9011
at errnoException (dns.js:26:10)
at GetAddrInfoReqWrap.onlookup [as oncomplete] (dns.js:77:26)
奇怪的是,实际的URL是www.xxxxxx.com.mt而没有内部部分。我不明白为什么它在这里有不同的表现。
以下是我正在使用的代码。
var url = 'https://www.xxxxxxxx.gov.mt/wsRPS.asmx?WSDL';
soap.createClient(url, function(err, client){
//client.addSoapHeader(soapHeader);
//
var args = {
from: "2016-03-01T11:00:00",
to: "2016-03-03T11:00:00"
};
client.GetInformation(args, function(err, result){
if(err){
throw err;
}
console.log(result);
});
});
有关正在发生的事情的任何想法?谢谢
答案 0 :(得分:0)
您需要提供客户端端点:
const url = 'https://www.xxxxxxxx.gov.mt/wsRPS.asmx';
soap.createClient(`${url}?wsdl`, (err, client) => {
// here
client.setEndpoint(url);
const args = {
from: "2016-03-01T11:00:00",
to: "2016-03-03T11:00:00"
};
client.GetInformation(args, (err, result) => {
if(err){
throw err;
}
console.log(result);
});
});