我正在嘗試在 go 中創建一個 http 服務器,當我運行代碼時,我得到的輸出為
在 localhost:8080 上收聽
但是當我使用curl localhost:8080來測驗它時,我得到了 DNS 錯誤
下面的代碼啟動一個 HTTP 服務器,監聽 8080 埠的傳入請求。
package main
import (
"fmt"
"html"
"log"
"net/http"
)
func main() {
http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, %q", html.EscapeString(r.URL.Path))
})
log.Println("Listening on localhost:8080")
log.Fatal(http.ListenAndServe(":8080", nil))
}
這是我運行curl localhost:8080時得到的輸出
$ curl localhost:8080
<HTML><HEAD>
<TITLE>Network Error</TITLE>
</HEAD>
<BODY>
<FONT face="Helvetica">
<big><strong></strong></big><BR>
</FONT>
<blockquote>
<TABLE border=0 cellPadding=1 width="80%">
<TR><TD>
<FONT face="Helvetica">
<big>Network Error (dns_unresolved_hostname)</big>
<BR>
<BR>
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
Your requested host "localhost" could not be resolved by DNS.
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica">
</FONT>
</TD></TR>
<TR><TD>
<FONT face="Helvetica" SIZE=2>
<BR>
For assistance, contact your network support team.
</FONT>
</TD></TR>
</TABLE>
</blockquote>
</FONT>
</BODY></HTML>
看起來是 DNS 問題,我正在嘗試在 VM 中設定 http 服務器,如何解決此錯誤?
uj5u.com熱心網友回復:
一種猜測是您的 http 請求正在通過代理。您可以取消設定HTTP_PROXY變數并重試。
否則,請嘗試使用127.0.0.1您機器的 IP 地址。:8080表示 HTTP 服務器系結到所有 IP。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/526306.html
