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

Cer*_*ean 8 ssl curl node.js

我正在尝试使用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
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助!

fva*_*ghe 13

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

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

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

我没有看到这个文件的稳定性或它是如何创建的.

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