javascript - 如何在 package.json 内的 npm 脚本中使用 SECRET_ENV?

标签 javascript node.js environment-variables secret-key

我有一个名为 API_KEY 的 key ,我想在 package.jsonscripts 内部访问它。

package.json

{
   "scripts": {
      "start": "web-ext run --api-key=API_KEY"
   }
}

我的 .env 文件包含 API_KEY:

API_KEY=abc123

如何访问 package.jsonscriptsAPI_KEY 的值,同时仍将其保密,因为我需要公开推送 package.json

目前,我执行以下操作,但不能跨平台:

package.json

{
   "scripts": {
      "start": "web-ext run --api-key=$API_KEY"
   }
}

当运行 start 脚本时,我这样做:

API_KEY=abc123 npm start

这要归功于 Bash 编程语言,但它不适用于 Windows。我需要将 start 脚本中的 $API_KEY 替换为 %API_KEY%。但我希望它是跨平台的。还有其他办法吗?

最佳答案

到目前为止我发现的唯一可行的答案有点hacky:

{
   "scripts": {
      "start": "web-ext run --api-key=$(grep API_KEY .env | cut -d '=' -f2)"
   }
}

[https://stackoverflow.com/a/58038814/1822977 ]

关于javascript - 如何在 package.json 内的 npm 脚本中使用 SECRET_ENV?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58046383/

相关文章:

javascript - Laravel 和 Vue : where to put js/app. js?

environment-variables - 如何使用 Chef Recipe 来设置环境变量?

ruby-on-rails - 亚马逊 opsworks 中带换行符的环境变量

javascript - Reflect.construct vs new(此处为对象类型)

javascript - 为什么我的图像高度缩放不正确?

javascript - 订阅 Youtube channel 时获取特定 div 的 ID

python - 您可以导出创建的 python conda 环境供其他人在他们的机器上激活吗?

javascript - 使用 Node js/Javascript 从 json 获取特定数据并将它们存储在数组中

javascript - NodeJS 和 MySQL 在第一次查询后出现 500 错误

node.js - 警告 : Task "clean:server" not found