当前位置: 首页 > 面试题库 >

nodejs-证书链中的错误自签名证书

周楷
2023-03-14
问题内容

我遇到客户端https请求的问题。

片段可以如下所示:

var fs = require('fs');
var https = require('https');

var options = {
    hostname: 'someHostName.com',
    port: 443,
    path: '/path',
    method: 'GET',
    key: fs.readFileSync('key.key'),
    cert: fs.readFileSync('certificate.crt')
}

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

我得到的是错误:证书链中的自签名证书。

使用邮递员时,我可以导入客户端证书和密钥,并且可以毫无问题地使用它。有没有可用的解决方案?我还希望对邮递员如何处理证书和工作方式有所了解。


问题答案:

根据您的问题,我想您正在使用SSL通讯的自签名证书进行开发。

如果是这种情况,请NODE_TLS_REJECT_UNAUTHORIZED='0'在您正在运行节点的任何地方或直接使用NODE_TLS_REJECT_UNAUTHORIZED='0' node app.js

这指示节点允许不信任的证书(不信任=未由证书颁发机构验证)

如果您不想设置环境变量或需要对多个应用程序执行此操作,则npm具有配置,您可以使用以下命令进行设置 npm config set strict- ssl=false

我不建议在生产中设置此环境变量。使用来自letencrypt.org之类的受信任提供商的免费SSL证书



 类似资料:
  • 问题内容: 我尝试将带有正确APP_ID,APP_SECRET等的curl请求发送到 我需要从中获取access_token,但需要返回FALSE并打印下一条消息: 我的代码是: 当我手动移动到上面的链接时,我会很好地获得access_token。为什么卷曲不起作用?请帮助。 问题答案: 建议禁用的答案不被接受。问题是“为什么它不适用于cURL”,正如Martijn Hols正确指出的那样,这很危

  • 我尝试将带有正确应用程序ID、应用程序机密等的curl请求发送到 我需要从中获取访问令牌,但获取FALSE和print next message,否则: 我的代码是: 当我手动移动到上面的链接时,我很好地获得了访问权。为什么卷曲不起作用?请帮忙。

  • 我最近升级了Inteliij IDEA 2019.2,如果我尝试从IDE中提取Git,我会发现以下错误:无法访问'https://github.xxx.com/app-Hello-USD/DGS.git/“:SSL证书问题:证书链中的自签名证书。 有人能帮我什么选项,我必须启用。 谢谢

  • 问题内容: 当尝试使用其PHP库通过Twilio发送消息时,我正在为这个错误而苦苦挣扎: 我在Windows 7上使用了wamp。 我当然找到了所有其他有关证书错误的信息。据我所知,通常更新或添加文件即可解决该问题。但是,即使这样做,我仍然遇到相同的错误。 就像这里所做的健全性检查一样,这正是我所做的: 从此处下载了最新的证书:http : //curl.haxx.se/ca/cacert.pem

  • 我有一个带有这些命令的自签名证书链,并在Apache服务器上配置了它们 但是当我尝试 我从openssl中得到一个错误 用于生成证书的命令或配置文件有问题吗? [req] distinguished_name=req_distinguished_name x509_extensions=v3_ca dirstring_type=nobmp [req_distinguished_name] comm

  • 我有一个API服务器,使用由受尊敬的CA颁发的非自签名证书。当我连接到此服务器时,我收到以下错误: x509:由未知权限签署的证书 我使用golang客户端通过库进行连接。证书配置正确,因为我没有收到关于它的错误投诉。 我没有预料到这个错误,因为我使用的是CA。我没有得到的错误时,使用网络浏览器。