【问题标题】:Heroku Postgres app works on local machine but not on HerokuHeroku Postgres 应用程序可以在本地机器上运行,但不能在 Heroku 上运行
【发布时间】:2019-11-19 07:38:18
【问题描述】:

我为 Heroku 构建并部署了一个 Node.js Postgres 应用程序,除了根 GET 路由之外,无法通过 Heroku 站点访问我的任何端点。奇怪的是,当我运行Heroku local web ALL 时,我的所有端点的行为都完全符合它们应有的行为。我可以在通过Heroku local web 运行的应用程序上成功执行 CRUD。但是,例如,当我尝试使用 Heroku URL 创建用户时,它会返回一个空的错误消息。然而,当我检查关联的数据库时,我发现确实创建了用户。除了在我尝试创建用户或对其签名时返回空错误消息外,该应用程序正确响应我编程的不同错误。例如,当我调整我的登录详细信息或尝试注册同一个用户时,我之前尝试正确注册它说用户已经存在!。不过,当我尝试登录同一个现有用户时,我收到一条空白错误消息。请注意,我使用完全相同的查询创建了 Heroku PostgreSQL 数据库和本地 PostgreSQL 数据库。拜托,你能帮我解决这个瓶颈吗?我正在使用 Postman 来测试我的 API。 Test to sign in user on Heroku app running on the local machine: success!

Same exact test with Heroku URL: cryptic error.

【问题讨论】:

  • 欢迎来到 Stack Overflow!我认为如果不查看代码(可能还有环境设置,即您的package.json,如果有的话),就不可能诊断出这个问题。理想情况下,您应该尝试将您的应用程序缩减到仍然会产生此错误的最低限度并共享该代码,以便这里的人们可以查看。

标签: postgresql heroku postman


【解决方案1】:

好的,经过大量研究和摆弄,我找到了解决方案。我没有将我的 .env 文件中的密钥添加到 Heroku,因为在 Heroku 用户仪表板的设置选项卡下可以找到 config vars。手动添加我的环境变量解决了这个问题。现在我的应用程序可以在我的本地机器上运行,也可以通过 Heroku URL 运行。

【讨论】:

    猜你喜欢
    • 2016-06-19
    • 2021-09-18
    • 2018-06-10
    • 1970-01-01
    • 2018-12-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-12-30
    相关资源
    最近更新 更多