1

如何通过 NodeJS 在给定域的 https 上验证 SSL 证书?

我需要知道用户是否像这样打开它是受信任的还是应该将其添加为例外?

--

我认为这段代码应该在未签名或自签名证书期间引发错误。

var https = require('https');

var options = {
  host: 'daarkoob.ir',
  port: 2222,
  path: '/',
  method: 'GET',
  rejectUnauthorized:true
};

var req = https.request(options, function(res) {
  console.log("statusCode: ", res.statusCode);
  console.log("headers: ", res.headers);
});
req.end();

req.on('error', function(e) {
  console.error(e);
});

https://daarkoob.ir:2222是自签名认证的,所以上面的代码应该在冲浪期间引发错误。但什么也没发生。

4

1 回答 1

0

从文档中: rejectUnauthorized: 如果true,则根据提供的 CA 列表验证服务器证书。'error'如果验证失败,则会发出一个事件。验证发生在连接级别,发送 HTTP 请求之前。默认true

我猜您需要指定 CA 列表,否则该选项将被忽略。

于 2013-12-11T16:29:57.737 回答