使用带有nodejs和heroku的postgres模块时pg-pool模块中的错误

时间:2016-06-27 18:59:48

标签: node.js postgresql heroku

我正在尝试在使用Heroku托管的nodejs服务器应用程序中使用postgresql数据库。

这是我在app.js中的pg代码:

var pg = require('pg');
pg.defaults.ssl = true;
pg.connect(process.env.DATABASE_URL, function(err, client) {
  if (err) throw err;
  console.log('Connected to postgres!');
});

和npm声明文件package.json:

{
  "name": "utility-app",
  "version": "0.0.1",
  "dependencies": 
  {
  "ejs": "*",
  "express": "3.3.x",
  "pg": "6.0.1",
  "simple-oauth2": "^0.7.0"
  },
  "engines": 
  {
  "node": "0.10.x",
  "npm": "1.2.x"
  }
}

这在我的本地环境中工作但是当我将代码推送到Heroku时,服务器崩溃了:

Screenshot of console demonstrating the crash

感谢您的帮助,

JP

1 个答案:

答案 0 :(得分:0)

pg-pool正在使用ES6 Promise,在您的Heroku帐户的Node.js版本中不支持,该版本在0.12之前。

您需要使用更现代版本的Node.js,例如4.x