Как сделать небезопасный вызов HTTPS в Node.js
В Curl я могу использовать -k для выполнения незащищенных соединений и передач SSL. Однако в файле node.js я проверяю документ на наличие HTTPS. Я не могу найти какие-либо варианты, которые могут это сделать.
Мне нужно это потому, что мне нужно вызвать удаленный сервер. У меня есть сертификат и пароль. Это может подключиться. Однако, поскольку URL-адрес сертификата отличается от хоста, проверка безопасности не удалась. Ну, по какой-то операционной причине, сертификат должен быть таким, и я не могу его изменить. Я попытался поместить http.options.hostname, как в сертификате. Но и это не помогает.
Итак, какие еще варианты я могу использовать?
3 ответа
Я не смог получить node-curl
работает, но настройка NODE_TLS_REJECT_UNAUTHORIZED
Помогла переменная env в 0. Я использовал request
библиотека для выполнения запроса HTTPS.
Лучший подход для решения https через незащищенный SSL-сертификат - использовать модуль curl-узла и установить для SSL_VERIFYPEER значение false.
var http = require('http');
var curl = require('node-curl');
http.createServer(function(request,response){
var url = 'https://url';
url += request.url;
console.log(url);
curl(url,
{
SSL_VERIFYPEER : 0
},
function(err){
response.end(this.body);
})
}).listen(8000);