我惊讶地发现 AWS ACM 颁发的公共证书在使用 axios 和 node-fetch 时会触发错误“无法验证第一个证书”。但是,当我从命令行使用 curl 时,我没有收到错误消息。所以我的问题是:
为什么节点会这样?Curl 似乎可以使用底层操作系统,它承认 AWS ACM 颁发的证书的 CA 权限;节点是否有自己的一组 CA 权限?
如果不启用
rejectUnauthorized
配置中的选项,如何解决此问题httpsAgent
?有没有办法通过例如使用操作系统的一组公认的 CA 权限来让节点表现得像 curl?AWS ACM 控制台中是否有一些设置可能使证书更适合 axios?
注意:我对配置 axios 以识别任何特定 CA 证书的解决方案不感兴趣(我想要一个通用的解决方案,使我能够 ping 多个我不一定控制的 AWS ACM 颁发的证书)。
编辑:我使用的是 OSX 11.3。
谢谢!