1

Go docs の例に従い、Go サーバー用にこのコードをコンパイルしました。

package main

import (
    "fmt"
    "net/http"
)

func handler(w http.ResponseWriter, r *http.Request) {
    fmt.Fprintf(w, "Hi there, I love %s!", r.URL.Path[1:])
}

func main() {
    http.HandleFunc("/", handler)
    http.ListenAndServe(":8080", nil)
}

しかし、localhost:8080 にアクセスしても何も表示されません。

4

2 に答える 2

4

変化するhttp.ListenAndServe(":8080", nil)

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

これにより、サーバーはインターフェイスでのみリッスンするようになりlocalhost、アクセス許可とファイアウォール ルールに関する問題は発生しなくなります。また、発生する可能性のあるエラーも記録します。

于 2013-05-29T23:43:53.353 に答える
-1

Linux では、8080 ポートでリッスンする必要があるため、プログラムを実行する権限が必要です。私は Ubuntu を使用しており、localhost:8080 にアクセスするとgo build -o mainsudo ./mainHi there, I love !

于 2013-05-29T14:21:57.830 に答える