javascript - 是否可以将 dotenv 变量存储在 json 文件中?
问题描述
在 Ghost CMS 中使用 Gatsby 需要一个包含我的 API 密钥的 .ghost.json 文件。我想将 repo 推送到 Github 并且不希望我的密钥在我的存储库中。因此问题是:是否可以在 json 文件中使用 .env 变量?
解决方案
默认情况下,当您公开以下内容时,Gatsby 会在(或) 中查找.env
变量:.env.development
.env.production
require("dotenv").config({
path: `.env.${process.env.NODE_ENV}`,
})
当然,您可以更改此行为。如果您想将变量保存在.json
文件中而不推送它,只需使用函数将它们添加到.gitignore
您需要的文件(或其他文件)中并将它们导入。使用,例如:.gatsby-config.js
require
require('../../ghost.json')
因此,我建议使用默认配置以避免可能出现的问题。您可以在没有 API 密钥的情况下保持文件推送并将它们移动到.env
本地文件,然后通过以下方式简单地加载您需要的位置:process.env.YOUR_API_KEY_VARIABLE
欲了解更多信息:https ://www.gatsbyjs.org/docs/environment-variables/
推荐阅读
- swift - 如何在类型上使用属性包装器抽象单例?
- r - ggplot 条形图在 Shiny 上无法正确显示
- vba - 在 VBA 中检查 pscp 传输的结果
- android - 在应用程序关闭或打开时检测来电或响铃
- sql-server-2019 - Synapse Analytics 与 SQL Server 2019 大数据集群
- reactjs - 我想在主页上显示一个变量
- c - 为什么这些函数具有不同的时间复杂度?
- python-3.x - Python Selenium - 从无序列表中选择列表项
- reactjs - 单击React中的另一个输入框时如何更改输入值
- javascript - 如何在赛普拉斯中存根数据库查询?