请问,我如何通过ssl,https Node.js连接?这是我的代码:
var Client = require('node-rest-client').Client;
client = new Client();
var headers = {
//"Accept": "application/json",
"Authorization": "Bearer "+sails.config.myGlobalVariables.access_token,
};
var args = {
headers: headers,
};
process.env.NODE_TLS_REJECT_UNAUTHORIZED = "0";
client.get("https://localhost:9443/oauth2/userinfo?schema=openid", args, function(data,response) {
// parsed response body as js object
//console.log(data.clienteCollection.cliente); //Prueba de listado de clientes recorrer JSON
// raw response
//console.log(response);
//console.log(data.name);
//req.session.nombreCompleto = data.name;
//console.log(data);
res.view('index',{
nombreCompleto: data.name,
});
});
我正在使用库node-rest-client和Sails.js。 我不想放置:process.env.NODE_TLS_REJECT_UNAUTHORIZED =“0”; 谢谢你的帮助。
答案 0 :(得分:2)
在node-rest-client和nodejs https.request文档之后,您可以在创建新客户端时在选项哈希中以PEM格式传递CA.因此,您必须使用链式证书。否则,您可以使用由众所周知的" root"由node.js。
信任的CAextern "C"
如this issue中所述,node.js不使用操作系统信任库,而是使用静态编译的,手动更新的,硬编码的证书颁发机构列表。