📅  最后修改于: 2023-12-03 15:24:17.597000             🧑  作者: Mango
如果你想在 Netlify 上部署 Gatsby 应用程序并需要使用 API 密钥或其他敏感数据,你可以将它们隐藏在环境变量中。 在 gatsby-config.js 中,你可以使用 process.env 这个对象访问这些环境变量。
下面是一个例子,展示了如何在 Netlify 上使用环境变量进行 Gatsby 应用程序的部署:
require("dotenv").config({
path: `.env.${process.env.NODE_ENV}`,
})
module.exports = {
siteMetadata: {
title: "My Gatsby Site",
},
plugins: [
{
resolve: "gatsby-source-contentful",
options: {
spaceId: process.env.CONTENTFUL_SPACE_ID,
accessToken: process.env.CONTENTFUL_ACCESS_TOKEN,
},
},
// other plugins
],
}
在这个例子中,我们使用 dotenv 模块加载了一个名为 .env.${process.env.NODE_ENV}
的文件,该文件存储了我们的 API 密钥和其他敏感数据。process.env.NODE_ENV
变量将自动设置为 'development'
或 'production'
。
我们可以使用这些环境变量来设置 Contentful API 的 spaceId 和 accessToken。
在 Netlify 中,你可以在你的项目设置中设置这些环境变量。 你可以在 "Build & deploy" 选项卡下的 "Environment variables" 中添加它们。
这个例子展示了如何将环境变量与 Gatsby 应用程序配合使用,但你也可以在其他 Node.js 应用程序中使用它们。
希望这篇文章对你有所帮助,快去试试吧!