登录
首页 >  Golang >  Go问答

Web 进程在启动 golang 后 60 秒内未能绑定到 $PORT

来源:stackoverflow

时间:2024-04-06 23:48:38 279浏览 收藏

一分耕耘,一分收获!既然都打开这篇《Web 进程在启动 golang 后 60 秒内未能绑定到 $PORT》,就坚持看下去,学下去吧!本文主要会给大家讲到等等知识点,如果大家对本文有好的建议或者看到有不足之处,非常欢迎大家积极提出!在后续文章我会继续更新Golang相关的内容,希望对大家都有所帮助!

问题内容

我使用golang开发了一个rest api。我已将存储库推送到heroku。我还在互联网上托管了一个mysql服务器。go rest api连接到mysql服务器并获取和插入数据。

heroku 上的应用程序昨天工作正常。但是今天早上我在“heroku log --tail”上收到此错误:web 进程无法在启动后 60 秒内绑定到 $port

这是 main.go 的代码:

package main

import (
    "os"
    "github.com/mingrammer/go-todo-rest-api-example/app"
    "github.com/mingrammer/go-todo-rest-api-example/config"
)

func main() {
    config := config.GetConfig()

    app := &app.App{}
    app.Initialize(config)
    port, ok := os.LookupEnv("PORT")

    if ok == false {
        port = "3000"
    }

    app.Run(":"+port)
}

解决方案


您可以使用 os.getenv 来实现此目的。

修改后的main.go代码如下:

package main

import (
    "os"
    "github.com/mingrammer/go-todo-rest-api-example/app"
    "github.com/mingrammer/go-todo-rest-api-example/config"
)

func main() {
    config := config.GetConfig()

    app := &app.App{}
    app.Initialize(config)
    port, err := os.Getenv("PORT")
    if err != nil {
        port = "3000"
    } 

    app.Run(":"+port)
}

今天关于《Web 进程在启动 golang 后 60 秒内未能绑定到 $PORT》的内容就介绍到这里了,是不是学起来一目了然!想要了解更多关于的内容请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>