在 Heroku PostgreSQL 中使用 connect-pg-simple 尝试在没有 SSL 的情况下进行连接

问题描述

p在尝试连接到 Heroku 托管的 PostgreSQL 数据库时获取此信息。

错误:没有主机“IP_ADDRESS”、用户“USER”的 pg_hba.conf 条目, 数据库“DBNAME”,SSL 关闭

这是我的代码...

import dotenv from 'dotenv'
import pg from 'pg'
import session from 'express-session'
import ConnectPgSimple from 'connect-pg-simple'

const result = dotenv.config()
const { Client,native } = pg

const pgNativePool = new native.Pool({
  max: 10,// default
  connectionString: process.env.DATABASE_URL,ssl: {
    rejectUnauthorized: false
  }
})

// This is the block of code causing the error
const pgSession = new ConnectPgSimple(session);
const store = new pgSession({
  pool: pgNativePool,tableName: 'sessions'
})

export default {
  query: (sql,params) => pgNativePool.query(sql,params),store // used by express-session
}

我正在使用 connect-pg-simple 将会话存储在数据库中。如果我剪掉那部分,错误就不会发生。我原以为 connect-pg-simple 会重用 native.Pool 中的现有连接。

关于为什么它会尝试在没有 SSL 的情况下重新连接的任何想法?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)