首页 > 解决方案 > 如何在项目中设置参数 NODE_EXTRA_CA_CERTS 而不是脚本

问题描述

我有一个使用 node.js 和 Jest 构建的 api 测试项目,它使用“request-promise”npm 包将 http 请求发送到多个域。最近我开始使用带有新域的 api 并收到以下错误:

RequestError:错误:证书链中的自签名证书

根据我的研究,我发现我需要将参数“NODE_EXTRA_CA_CERTS”设置为带有证书的 .pem 文件的路径。仅当我在 cli 脚本中设置参数时,此解决方案才有效:

"scripts": {
    "test": "set NODE_EXTRA_CA_CERTS=./src/bin/HarelCerts.pem&&set NODE_ENV=test&&node node_modules/jest/bin/jest.js -i"
  }

在我的package.json文件中但是当我在我的.env文件中设置它时它停止工作,我将参数打印到控制台以验证它是否已添加到我的 process.env 中,所以我不知道是什么是问题所在。

由于我不喜欢脚本实现,还有另一种更好的方法吗?

标签: node.jsssl-certificatehttprequest

解决方案


推荐阅读