在节点中我正在使用npm模块“request”:https://www.npmjs.com/package/request
我想知道如何从响应中检索使用的TLS版本,TLS1.0,TLS1.1,TLS1.2。
var request = require("request");
request.get({url: "https://www.google.com/"}, function(err, response, body) {
console.log(response.req.connection._tlsOptions); // ??
process.exit(0);
});
我们的一个提供商很快将只管理TLS1.2,我想知道现在使用哪个版本,以便知道我是否必须为此提供商指定secureProtocol:“TLSv1_2_method”。
答案 0 :(得分:0)
您可以向howsmyssl.com发送请求
var allData = ''
require('request')({
uri: 'https://howsmyssl.com/a/check'
}).on('data', function(data) {
allData += data.toString()
}).on('end', function() {
console.log(JSON.parse(allData).tls_version)
})
答案 1 :(得分:0)
require('request').get("https://www.google.com/").on('response',
(response) =>
console.log(response.socket.getProtocol())
); ""
tlsSocket.getProtocol()
不能在回调中使用,因为此时连接已关闭,并且TLS连接元数据不再可用。
https://nodejs.org/api/tls.html#tls_class_tls_tlssocket
返回TLS连接元数据的方法(例如tls.TLSSocket.getPeerCertificate()仅在打开连接时返回数据。