Может ли кто-нибудь помочь мне с этой ошибкой терминала GoLand - PullRequest
0 голосов
/ 18 декабря 2018

Я новичок в использовании GoLand IDE, и у меня возникла небольшая проблема при запуске моего веб-приложения go.Код не компилируется при использовании Терминала.Опять же, имейте в виду, что я новичок.

Вот проблема: терминал дублировал командную строку, когда я пытаюсь запустить код.Спасибо в Advanced.

C: \ Users \ Evan \ go \ src \ awesomeProject9> go run 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 голосов
/ 18 декабря 2018

Спасибо @zerkms за то, что указал, что я был не прав.Я просто наткнулся на точную ошибку, которую попытался предупредить вас позже:

вам действительно следует использовать ошибку, возвращаемую вызываемыми функциями, поскольку они действительно очень вам помогут!Для начала просто:

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 не блокирует дальнейшее выполнение кода ....

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...