任何人都可以帮我解决这个GoLand终端错误

时间:2018-12-17 22:16:20

标签: go

我是使用GoLand IDE的新手,在运行go Web应用程序时遇到了一个小问题。使用终端时,代码未编译。再次提醒您,我是新手。

这是问题所在:尝试运行代码时,终端复制了命令提示符。感谢进阶。

C:\ Users \ Evan \ go \ src \ awesomeProject9>运行main.go

C:\ Users \ Evan \ go \ src \ awesomeProject9>

 package main

import (
  "fmt"
  "html/template"
  "net/http"
)

var tpl *template.Template

func init(){
  template.Must(template.ParseGlob("templates/*.html"))
}

func main() {
  http.HandleFunc("templates/index", idx)
  http.ListenAndServe("8000", nil)
  fmt.Println("hello World")
}

func idx(w http.ResponseWriter, r *http.Request){
  tpl.ExecuteTemplate(w, "templates/index.html", nil)
}

1 个答案:

答案 0 :(得分:0)

感谢@zerkms指出我错了。我只是遇到了稍后尝试警告您的确切错误:

您确实应该使用被调用函数返回的err,因为这些确实对您有很大帮助!简单来说就是这样:

err := http.ListenAndServe("8000", nil)
if err != nil {
  log.Fatal(err)
}

此恐慌包括:

2018/12/18 10:43:16 listen tcp: address 8000: missing port in address

正确的行应该是

err := http.ListenAndServe(":8000", nil)

错误仅用于文档

ListenAndServe不会阻止进一步的代码执行。...