【问题标题】:NodeJS - SequelizeConnectionError: self signed certificateNodeJS - SequelizeConnectionError:自签名证书
【发布时间】:2021-05-01 04:24:59
【问题描述】:

我正在尝试连接到 Heroku 中托管的 PostgreSQL 数据库

if (process.env.DATABASE_URL) {
  //Heroku
  console.log("Init sequelize with process.env.DATABASE_URL")
  sequelize = new Sequelize(process.env.DATABASE_URL, {
    dialect: 'postgres',
    protocol: 'postgres',
    dialectOptions: {
        ssl: true,
        rejectUnauthorized: false
    }
  });
  console.log("Finished sequelize with process.env.DATABASE_URL")
} else {
  console.log("Init sequelize with config.database")
  var sequelize = new Sequelize(config.database, config.username, config.password, config);
  console.log("Finished sequelize with config.database")
}

这是我用于 localhost 的 config.json:

{
  "production": {
    "use_env_variable": "DATABASE_URL",
    "dialect": "postgres",
    "ssl":true,
    "dialectOptions":{
        "ssl":{
          "require":true,
          "rejectUnauthorized": false
        }
    }
  }
}

当我使用 pm2 start --env=production 运行我的服务时,我收到以下错误:

ConnectionError [SequelizeConnectionError]: self signed certificate

节点版本:v14.16.0

“续集”:“^6.6.0”

“pg”:“^8.5.1”

谁能告诉我这里发生了什么?

提前致谢

【问题讨论】:

    标签: node.js postgresql heroku sequelize.js heroku-postgres


    【解决方案1】:

    在您的 Heroku 连接中,尝试将 ssl 通知为:

              dialectOptions: {
                   ssl: {
                        require: true,
                        rejectUnauthorized: false
                      }
              }
    

    【讨论】:

      猜你喜欢
      • 2020-08-04
      • 2017-12-18
      • 2020-08-24
      • 1970-01-01
      • 2018-03-26
      • 2016-03-17
      • 1970-01-01
      相关资源
      最近更新 更多