【问题标题】:Node.JS Heroku Postgres Connection not workingNode.JS Heroku Postgres 连接不起作用
【发布时间】:2021-06-26 23:15:53
【问题描述】:

我正在尝试在本地实例中通过 Node.js 连接到我使用 Heroku 创建的 PostgreSQL 服务器。 我遇到的问题是连接永远不会建立,我无法理解原因,因为没有错误输出。以下是我的代码的 sn-p:

async function main(){

const { Pool } = require('pg');
const pool = new Pool({
    connectionString: "postgres://very_long_url_here" || process.env.DATABASE_URL,
    ssl: {
        rejectUnathorized: false
    }
});

const client = await pool.connect();
console.log('connection established.');
const currentRecord = await client.query(`SELECT * FROM test_table WHERE email='me@aol.com'`);
console.log(currentRecord);
console.log('records pulled');
}
main();

当我通过命令行运行此脚本时,没有打印任何 console.log() 命令,但我也没有收到任何错误,尽管连接显然没有发生。 我通过 heroku CLI 运行 heroku pg:credentials:url DATABASE 获得了 postgres 数据库的连接字符串。对 node、heroku 和 stack 社区非常陌生 - 感谢您的任何反馈!

【问题讨论】:

    标签: node.js postgresql heroku heroku-postgres


    【解决方案1】:

    我遇到了一个非常相似的问题。事实证明,我没有冻结 package.json 中的节点版本,因此问题和本地/部署行为是由使用 2 个不同节点版本运行代码引起的。在本地,我在节点 v10 中运行,而在 heroku 中它在 v14 中运行。因此,在 package.json 中执行此操作解决了问题:

    “引擎”:{ “节点”:“12.x” },

    显然,它不适用于 v14,但中间 LTS 版本 (12) 似乎可以正常工作。做了一些研究,似乎 v14 和 pg Node 14.0.0 - pg does not response #2180 存在/已经存在一些问题。

    【讨论】:

      猜你喜欢
      • 2014-11-24
      • 2014-09-17
      • 2021-07-24
      • 2016-10-29
      • 2021-07-10
      • 2020-03-19
      • 2019-12-04
      • 2014-01-19
      • 2021-04-24
      相关资源
      最近更新 更多