gpt4 book ai didi

node.js - Nodejs https 请求 UNABLE_TO_GET_ISSUER_CERT_LOCALLY

转载 作者:搜寻专家 更新时间:2023-10-31 22:26:07 28 4
gpt4 key购买 nike

操作系统:debian sid

Node :v0.10.38

我有一个使用身份验证的私有(private)服务的请求:

var https = require('https');

var options = {
host: 'private.service.com',
path: '/accounts/' + '123323' + '/orders',
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': 0,
'Authorization': 'Bearer ' + 'asdsdgcvxcvxcv'
}
};

var request = https.request(options, function (res) {
console.log(res);
});

当我运行脚本时, Node 抛出此错误:

events.js:72
throw er; // Unhandled 'error' event
^
Error: UNABLE_TO_GET_ISSUER_CERT_LOCALLY
at SecurePair.<anonymous> (tls.js:1381:32)
at SecurePair.emit (events.js:92:17)
at SecurePair.maybeInitFinished (tls.js:980:10)
at CleartextStream.read [as _read] (tls.js:472:13)
at CleartextStream.Readable.read (_stream_readable.js:341:10)
at EncryptedStream.write [as _write] (tls.js:369:25)
at doWrite (_stream_writable.js:226:10)
at writeOrBuffer (_stream_writable.js:216:5)
at EncryptedStream.Writable.write (_stream_writable.js:183:11)
at write (_stream_readable.js:602:24)

同一个脚本几个月来都运行良好,我确信身份验证是正确的。今天是我第一次遇到这种情况。

导致此错误的原因可能是什么?

最佳答案

经过一番研究,我发现这是我尝试向其发出 https 请求的服务器的问题。

Node https 在 private.service 服务器上找不到 ssl ISSUER_CERT,因此它抛出该异常。

我使用的解决方案是添加

            rejectUnauthorized: false

对于https请求的选项,这种方式 Node 在证书问题的情况下不会抛出异常。

无论如何,只有当您知道您可以信任请求的主机时,此解决方案才有效,否则它可能不是最佳解决方案。

关于node.js - Nodejs https 请求 UNABLE_TO_GET_ISSUER_CERT_LOCALLY,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30651407/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com