我不太确定为什么要得到这个。当我去在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);
答案 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