首页 > 解决方案 > Web 应用程序立即启动和停止

问题描述

我正在 Go 中创建一个 Web 应用程序。我现在在登录和主页工作。而且我可以登录到应用程序并很好地查看我的主页。现在我正在尝试向登录页面添加样式。但似乎我做了 (??) 导致应用程序启动并立即关闭而不会引发任何类型的错误、警告或恐慌的事情。

我不太确定会发生什么。我做的最后一件事是向我的登录页面添加一个通用 CSS 文件。但即使删除它也不能解决问题。

这是我的主要方法:

package main

import (
    "log"
    "net/http"

    "github.com/Matias-Barrios/QuizApp/config"
    "github.com/Matias-Barrios/QuizApp/router"
)

func main() {
    envF := config.EnvironmentFetcher{}
    port, err := envF.GetValue("PORT")
    if err != nil {
        log.Fatalln(err.Error())
    }
    log.Println("Starting app in port : ", port)
    http.ListenAndServe(":"+port, router.GetRouter())
}

这是我的 router.go 文件:

package router

import (
    "log"
    "net/http"

    "github.com/Matias-Barrios/QuizApp/config"
)

var APP_KEY string

func init() {
    var err error
    envF := config.EnvironmentFetcher{}
    APP_KEY, err = envF.GetValue("APP_KEY")
    if err != nil {
        log.Fatalln(err.Error())
    }
}

// GetRouter :
func GetRouter() *http.ServeMux {
    mux := http.NewServeMux()
    mux.HandleFunc("/login", loginHandler)
    mux.Handle("/index", AuthMiddleware(http.HandlerFunc(indexHandler)))
    mux.HandleFunc("/auth", TokenHandler)
    mux.HandleFunc("/favicon.ico", faviconHandler)

    // Static files handling
    mux.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("static"))))
    return mux
}

有人可以看到可能导致此类问题的东西吗?当我启动应用程序时,我得到控制台输出就好了,然后立即停止:

matias@QuizApp (master)
 $ APP_KEY="secret" PORT="3000" go run main.go 
2020/02/08 23:51:00 Starting app in port :  3000
matias@QuizApp (master)
 $ 

笔记 :

当这种情况开始发生时,我什至没有修改任何*.go文件。我只是在修改htmlcss文件。

笔记2:

我发现这两个进程在后台运行ps

matias    2877  3499  0 23:27 ?        00:00:00 /home/matias/go/bin/dlv debug --headless=true --listen=127.0.0.1:11449 --api-version=2
matias    2953  2877  0 23:27 ?        00:00:00 /home/matias/go/src/github.com/Matias-Barrios/QuizApp/__debug_bin

我猜他们是罪魁祸首,是的,现在我的应用程序可以工作了。我正在使用 VS Code,可能是它的错误?

标签: htmlcssgoweb-applications

解决方案


推荐阅读