我无法执行从NodeJS网络服务器到公共服务的HTTPS请求。
代码在这里:
const https = require('https');
var httpOptions = {
hostname: <URL>,
path: <PATH>,
port:443,
method:"GET",
auth: <USERNAME>+":"+<PASSWORD>
}
console.log(httpOptions);
https.get(httpOptions,(res)=>{
console.log('statusCode:', res.statusCode);
res.on('data', function (chunk) {
console.log("DATA");
});
res.on('end',(error)=>{
console.log("END");
});
res.on('error',(error)=>{
console.log("ERRROR");
});
});
我得到以下回应:
Error: Hostname/IP doesn't match certificate's altnames: "Host: https. is not in the cert's altnames: DNS:*.ng.bluemix.net, DNS:ng.bluemix.net"
我该如何解决这个问题?
答案 0 :(得分:0)
您使用的网址似乎没有有效的SSL证书。
答案 1 :(得分:0)
问题是主机名错误。 我一开始就删除了协议:
"https://example.com" => "example.com"
之后效果很好。