Node.JS请求rejectUnauthorized为false

我正在尝试使用Node.js的request模块来制定一个HTTPS GET请求。 使用https模块的相应代码如下所示:

 var https = require('https'); var options = { hostname: url, path: path, rejectUnauthorized: false, secureProtocol: 'TLSv1_method', port: 8443, method: 'POST' }; https.get(options, function(response) { var body = ''; response.on('data', function(chunk) { body += chunk.toString(); }); response.on('end', function() { var content = JSON.parse(body); console.log(content); }); }); 

我试图用request模块重写这段代码,如下所示:

 var request = require('request'); var options = { url: url, strictSSL: false } request.get(options, function(error, response, body) { if (error) { console.log(error); } else { console.log(body); } }); 

但是,这给了我一个错误{ [Error: socket hang up] code: 'ECONNRESET', sslError: undefined }

rejectUnauthorized: falserequest是什么?

即使没有logging,Node.js中的request模块也有secureProtocol选项。

这可以使用如下:

 var request = require('request'); var options = { url: url, strictSSL: false, secureProtocol: 'TLSv1_method' } request.get(options, function(error, response, body) { if (error) { console.log(error); } else { console.log(body); } }); 

添加这两行:

 ... rejectUnauthorized: false, requestCert: false,//add when working with https sites agent: false,//add when working with https sites ... 

这对我行得通。