如何解决Heroku:如何使用 Docker 部署在 Review Apps 中登录?
我已在我的应用中使用 GitHub 登录。问题是 GitHub 只允许您设置一个回调 url,即使它允许多个,我也需要在 release
或 postdeploy
url 中设置该回调。我不知道这是否是我想要做的(我想我可以通过 GitHub API 调用为每个 Heroku Review 应用程序动态创建多个 GitHub OAuth 应用程序 - 我宁愿不这样做)。
或者,由于审查应用程序数据库和生产数据库不同,我可以用虚拟数据和虚拟用户为数据库做种,但是我需要在 Docker 构建阶段以某种方式知道这个应用程序是一个查看应用程序(使用 HEROKU_BRANCH
),然后我可以在构建期间添加自定义逻辑以禁用 GitHub OAuth 并仅接受基于凭据的登录。问题是 Heroku 在构建阶段不提供 HEROKU_BRANCH
或 HEROKU_APP_NAME
环境变量。如果我理解正确,它们仅在运行时和 release
阶段可用。
我认为我目前可以在每个请求中检查是否设置了 HEROKU_BRANCH
env var,但我想避免运行时检查并在构建期间创建不同的包。
顺便说一句,我正在构建 an open-source Next.js app with NextAuth 进行身份验证,但我也很欣赏与平台/框架无关的响应。如果您熟悉,那么我也很感激如何有条件地更改我接受登录的方式,我认为使用 getStaticProps
并检查 process.env.HEROKU_BRANCH
是最好的方法,但再次 HEROKU_BRANCH
在构建期间不可用。为了安全起见,我也可以放一个 IS_HEROKU_REVIEW_APP
只是为了让您安心,因为有人设置 HEROKU_BRANCH
env var 会导致一些巨大的安全问题。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。