node.js - 如何访问 netlify-lambda 中的 gatsby 环境变量

标签 node.js aws-lambda gatsby netlify faas

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

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

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

最佳答案

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

因此,也许答案是设置一个新的环境变量 APP_ENV (或其他),您可以在 Netlify/Gatsby 中自由更改它,以正确指示当前环境(开发、暂存和生产),并将 NODE_ENV 留给工具自行管理。

他们在 Gatsby 文档中对此进行了一些讨论:

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

关于node.js - 如何访问 netlify-lambda 中的 gatsby 环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56522712/

相关文章:

javascript - 在 Angular 中关闭严格模式?

node.js - Storm 路径 express : Save customData

amazon-web-services - 回调后 AWS Lambda 继续执行

amazon-web-services - 从 VPC/Lambda 访问 Parameter Store

gatsby - Gatsby 的 gitignore 中包含 public 是否有原因?

javascript - GatsbyJS 在从其他组件呈现 GraphQL 查询时出现问题

javascript - 一次在两个字段上的 firestore.where()

javascript - JS 与 Python 字节数组编码

amazon-web-services - 调用 AWS lambda 函数,等待完成

javascript - 在 Gatsby 站点中集成 Drift 聊天服务