我正在尝试使用nodejs 0.12连接到远程服务器,但是我不断收到SELF_SIGNED_CERT_IN_CHAIN响应。我查看了类似的问题12,但它们的解决方案在我的服务器上无效。
我正在连接到一个由自签名证书设置的我无法控制的测试环境。这是我的请求:
我正在连接到一个由自签名证书设置的我无法控制的测试环境。这是我的请求:
var https = require("https");
var fs = require('fs');
start();
function start()
{
var listadebancos =
{
language:"es",
command:"GET_BANKS_LIST",
merchant:
{
apiLogin:"111111111111111",
apiKey:"11111111111111111111111111",
},
test:true,
bankListInformation:
{
paymentMethod:"PSE",
paymentCountry:"CO"
}
};
var listadebancosString = JSON.stringify(listadebancos);
var headers =
{
'Content-Type': 'application/json',
'Content-Length': listadebancosString.length
};
var options= {
host: 'stg.api.payulatam.com',
rejectUnauthorized: false,
agent:false,
path: '/payments-api/4.0/service.cgi',
method: 'POST',
cert: fs.readFileSync('./stg.gateway.payulatam.crt'),
}
process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
var req= https.request(options, funcionRespuesta);
req.write(listadebancosString);
req.end();
function funcionRespuesta(res)
{ console.log(res);
}
}
我是否遗漏了什么显而易见的东西?
strictSSL: false
。此外,https.request 中的 cert 选项是客户端证书。 - Plato