Heroku 错误:Web 进程在启动后 60 秒内无法绑定到 $PORT(使用 axios)

Posted

技术标签:

【中文标题】Heroku 错误:Web 进程在启动后 60 秒内无法绑定到 $PORT(使用 axios)【英文标题】:Heroku Error: Web process failed to bind to $PORT within 60 seconds of launch (With axios) 【发布时间】:2019-12-07 07:51:46 【问题描述】:

这是完整的错误代码:错误 R10(启动超时)-> Web 进程在启动后 60 秒内无法绑定到 $PORT

对此的很多答案都说它与设置你的端口有关,因为 heroku 这样做是动态的,但如果我使用 axios 而不是 server.listen,并且需要 mcsrv api 的特定端口,我会怎么做解决这个问题?

我已经尝试将其设置为 process.env.PORT 无济于事(以及使用 || 语句将其设置为默认端口)

 // Function for getting player counts
require('dotenv').config()

const axios = require('axios')

function pingForPlayers() 

    // Ping API for server data.

    axios.get(`https://api.mcsrvstat.us/2/play.lightningshot.net`)
    .then(response => 

        // If it gets a valid response

        if(response.data && response.data.players) 

            let playerCount = response.data.players.online || 0 // Default to zero

            info = `$playerCount`

            client.channels.get('605543627208392875').setName("Players Online: " + info)

            // Could add console.log for more info, not necessary waste of cache data
        

        else
            console.log('Could not load player count data for', process.env.MC_SERVER)


    ).catch(err => console.log('Error pinging api.mcsrvstat.us for data:', err))


【问题讨论】:

【参考方案1】:

您的应用不是网络应用。

您可以在源中添加Procfile

worker:  node index.js // (or your main file)

并改为工人:

在 Heroku 仪表板中,单击选项卡资源 并启用 worker

【讨论】:

以上是关于Heroku 错误:Web 进程在启动后 60 秒内无法绑定到 $PORT(使用 axios)的主要内容,如果未能解决你的问题,请参考以下文章

Node.js 和 Heroku 错误:Web 进程在启动后 60 秒内无法绑定到 $PORT

错误 R10(启动超时)-> Web 进程未能在启动后 60 秒内绑定到 $PORT - HEROKU ERROR

Heroku discord bot 托管错误 R10(启动超时)-> Web 进程在启动后 60 秒内无法绑定到 $PORT

Heroku:Web 进程在启动后 60 秒内无法绑定到 $PORT

Heroku Node.js 错误 R10(启动超时)-> Web 进程在启动后 60 秒内无法绑定到 $PORT

Heroku 节点 js 部署问题:Web 进程在启动后 60 秒内无法绑定到 $PORT