1

我想根据我的 NODE_ENV 变量在我的 Netlify 函数中使用不同的凭据。我有一个 Gatsby 项目,当我运行 netlify dev Gatsby 设置 NODE_ENV === development 并且 gatsby develop 命令将其设置为生产。

请查看 Auth.js 文件https://github.com/iamskok/gatsby-dev-blog-starter/tree/feature/github-comments/.netlify/functions

Netlify 函数必须使用与 Gatsby 相同的 ENV 变量。

4

1 回答 1

1

NODE_ENV使用起来很棘手,因为很多网络工具都使用它来打开/关闭生产优化 - 它的含义已经变得有些超载。以部署到 Netlify 为例,您总是希望看到优化的产品构建,即使在部署到非产品开发环境时也是如此,因此 NODE_ENV 应该始终在那里“生产”。

因此,也许答案是设置一个新的 env var APP_ENV(或其他),您可以在 Netlify/Gatsby 中自由更改它以正确指示当前的 env(dev vs. staging vs. prod),并将 NODE_ENV 留给工具自行管理。

他们在这里的 Gatsby 文档中谈到了一点:

https://www.gatsbyjs.org/docs/environment-variables/#additional-environments-staging-test-etc

于 2019-06-10T08:24:14.560 回答