我正在使用节点v0.10.32。我想在node.js中创建一个SOAP请求。我遇到了这个错误: "请求主机名/ IP不匹配证书的altnames"
正如此链接所示
Node.js Hostname/IP doesn't match certificate's altnames
我应该输入{rejectUnauthorized:false}。但它仍然给我带来同样的错误。 (顺便说一句:" altname"实际上是什么意思?)
我的代码如下:
var soap = require('soap');
var url = 'https://link.to/my/url/file.wsdl';
var args = {Email: 'my@email.de', Passwort: 'passwort123', deviceMac: '00-14-22-01-23-45'};
soap.createClient(url, {rejectUnauthorized: false}, function(err, client) {
client.myOperation(args, function(err, result) {
console.log(err, result);
});
});
我也试过这个(我得到了同样的错误信息)
process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
var soap = require('soap');
var url = 'https://link.to/my/url/file.wsdl';
var args = {Email: 'my@email.de', Passwort: 'passwort123', deviceMac: '00-14-22-01-23-45'};
soap.createClient(url, function(err, client) {
client.myOperation(args, function(err, result) {
console.log(err, result);
});
});
该网址不是以"https://www."
开头吗?
答案 0 :(得分:1)
'肥皂'您正在使用的库可能取决于节点'请求'库,这意味着它与Node.js Hostname/IP doesn't match certificate's altnames
的问题相同您最简单的解决方案是通过http而非https发出请求(将https更改为您网址中的http)。