错误:连接ECONNREFUSED 127.0.0.1:5432 heroku

时间:2020-07-17 04:26:22

标签: node.js heroku

我不太确定为什么要得到这个。当我去在Heroku上启动应用程序时,我收到一个404错误,消息未找到,它来自我的app.js文件中的错误处理程序,但是我不确定发生了什么。

一切都在本地工作?

let schema = {
   "type":"object",
   "properties":{
      "itemList":{
         "type":"array",
         "items":[
            {
               "type":"object",
               "properties":{
                  "itemId":{
                     "type":"string",
                     "maxLength":1
                  },
                  "description":{
                     "type":"string"
                  }
               },
               "required":[
                  "itemId",
                  "description"
               ]
            }
         ]
      }
   },
   "required":[
      "itemList"
   ]
};

var ajv = new Ajv({allErrors: true,useDefaults: true});
ajv.addKeyword('itemList', {
    validate: function(data, dataPath, parentData, parentDataProperty){
        
        console.log('Enter Here!');
        return true;
    }
});

var validate = ajv.compile(schema);

var valid = validate({"itemList": [
            {
                "itemId": "100",
                "description": "test item"
            }
        ]
    });


console.log(validate.errors);

1 个答案:

答案 0 :(得分:0)

请发布您的server.js代码和Procfile。 同样通过查看错误,似乎您已经使用了localhost PostgreSQL主机,但在heroku上使用了PostgreSQL,您确定addokus是否包含在heroku中? 如果添加了连接代码,则需要使用该URL才能起作用。示例可能如下所示

    connectionString = 'postgresql://dbuser:secretpassword@database.server.com:3211/mydb'

像这样使用:

    const { Pool, Client } = require('pg')
    const connectionString = 'postgresql://dbuser:secretpassword@database.server.com:3211/mydb'

    const pool = new Pool({
        connectionString: connectionString,
    })

或这样

    var client = new Client({
        user: "username",
        password: "pwd",
        database: "dbname",
        port: 5432,
        host: "host",
        ssl: true
    });
    client.connect(function () {
        console.log("connected");
    });

您可以找到说明here