使用 heroku 部署小型 nodejs 应用程序时出错

Error in deploying a small nodejs app with heroku

我有一个 API 服务器,我想每分钟更新一次数据库,所以我创建了一个小脚本(另一个项目),这样他每分钟都会向我的主服务器发送一个请求,我做了一个处理请求的路由

const request = require("request");
setInterval( async()=> { 
   request({
     url :"https://serverdomainname/route",
     json:true
},(err,res,body)=>{
    console.log("sent")
})}, 60000);

在我打字的时候开发中

节点应用 一切正常,但当我在 Heroku 中部署时,它在第一秒内正常工作,但随后出现此错误

{

2021-10-23T16:09:52.503866+00:00 app[web.1]: > updateserver@1.0.0 start /app

2021-10-23T16:09:52.503866+00:00 app[web.1]: > node app.js

2021-10-23T16:09:52.503867+00:00 app[web.1]:

2021-10-23T16:10:51.663197+00:00 heroku[web.1]: Error R10 (Boot timeout) -> Web process failed to bind to $PORT within 60 seconds of launch

2021-10-23T16:10:51.709745+00:00 heroku[web.1]: Stopping process with SIGKILL

2021-10-23T16:10:51.846193+00:00 heroku[web.1]: Process exited with status 137

2021-10-23T16:10:51.926528+00:00 heroku[web.1]: State changed from starting to crashed

}

那些来自 Heroku 服务器的服务器日志

是否有解决方案,或者我可以从主服务器上解决吗?

Heroku 期望 运行 你的应用程序在一个端口上,你可以分配端口甚至不需要像

const request = require("request");
setInterval( async()=> { 
   request({
     url :"https://serverdomainname/route",
     json:true
},(err,res,body)=>{
    console.log("sent")
})}, 60000);

// to run on Heroku
require('http').createServer((req, res) => res.end()).listen(process.env.PORT || 3000);

或者也可以帮到你