失眠和NodeJS:"错误:对等证书无法使用给定的CA证书进行身份验证"

时间:2017-06-22 16:47:53

标签: node.js ssl curl

我尝试使用Insomnia应用程序向NodeJS服务器应用程序发送GET请求 - 我没有编写应用程序但已加入团队。

虽然当我从浏览器点击URL https://127.0.0.1:9999时得到一个合理的JSON响应时,我收到错误"错误:对等证书无法使用给定的CA证书进行身份验证"当我使用失眠症时。使用Mac,MacOS 10.12.4。节点v6.3.1。

失眠时间表说:

* Preparing request to https://127.0.0.1:9999/
* Enable automatic URL encoding
* Enable SSL validation
* Enable cookie sending with jar of 2 cookies
* Hostname in DNS cache was stale, zapped
*   Trying 127.0.0.1...
* TCP_NODELAY set
* Connected to 127.0.0.1 (127.0.0.1) port 9999 (#8)
* WARNING: using IP address, SNI is being disabled by the OS.
* SSL certificate problem: Invalid certificate chain
* Curl_http_done: called premature == 1
* Closing connection 8

感谢您的帮助!

1 个答案:

答案 0 :(得分:7)

关于Insomnia如何处理证书的文档很少。只要它们是由典型CA权限签名的普通证书,通常就没有问题。由于您还引用了您的环回地址(127.0.0.1),我假设您还使用自签名证书进行测试。

我注意到Insomnia使用Mozilla证书颁发机构列表。它不使用您的操作系统列表。

该列表存储在C:\ Temp \ insomnia_5.12.4等目录中的文本文件中。就我而言,它是例如2017-01-18.pem。您可以将自己的签名授权证书添加到此文件中。

我没有看到这个文件的稳定性或创建方式。

您还可以通过在设置中禁用证书错误来解决此问题(设置>验证SSL证书)。