在 Next.js/NOW 上本地访问 SSR 和 API 路由的机密



尝试在本地使用Next.js/NOW托管站点的机密。

这些是我只想用于SSR页面和API函数(不是浏览器呈现的组件(的秘密。

与Zeit的文档相反,这些秘密似乎只有在存储在.env.build中时才有效。如果它们存储在.env则显示为undefined.

换句话说,这有效:

.env.build

SECRET_KEY="2039usdljkhfklsjdfjaops9dfi09"

now.json

{
"build": {
"env": {
"SECRET_KEY": "@secret-key"
}
}
}

这不会:

.env

SECRET_KEY="2039usdljkhfklsjdfjaops9dfi09"

now.json

{
"env": {
"SECRET_KEY": "@secret-key"
}
}

我错过了什么吗?

我担心的是,放入build的秘密将被"内置"到网站中,即公开可用。我是否误解了"构建"这个词?

我的问题已通过登录 zeit.co、转到我的应用程序的项目设置并为我的Framework Preset选择Other来解决。它以前已设置为Next

进行该更改后,当我运行now dev时,我的本地环境变量开始出现在process.env中。

这似乎是now 17.x的怪癖.降级到now 16.7.3也解决了这个问题。希望这能尽快解决!

相关内容

  • 没有找到相关文章

最新更新