在我看来,Node.JS中的证书检查的实现在Linux或Windows等平台上有所不同。如果它适用于Linux,那么有时它就不会出现在Windows上。
答案 0 :(得分:0)
我想分享这个,因为我有点沮丧。
在我的工作场所,我们有一些运行正在进行中的API的测试服务器。当使用Node查询它时,我发现了一些重要的实现不匹配,无论是在Windows还是Linux上运行。
服务器具有HTTPS请求的自签名证书以及使用https.request(....)查询时;在Linux上没有任何问题。
当我在Windows上尝试此操作时,我会收到证书错误。这让我寻找解决方案。我所能找到的只是帮助使用全局代理并使用SSLv3_method
。在这种情况下也没有用。
根据巧合,我发现如何通过设置以下请求选项来禁用节点中的证书检查:
rejectUnauthorized: false,
requestCert: true,
agent: false
我希望通过谷歌找到这个有用的人。
随意开始讨论或证明我错了。其他一些同事和我经历了这一点,这花费了将近一天时间才弄明白。