如何在處理函數中發出 http.Get 請求?例如,這個簡單的代碼“應該”在 localhost:8080 瀏覽器中返回空白頁面,但它會出錯。我在學校錯過了什么?package mainimport "net/http"func index(w http.ResponseWriter, r *http.Request) { _, err := http.Get("www.google.com") if err != nil { panic(err) }}func main() { http.HandleFunc("/", index) http.ListenAndServe(":8080", nil)}
1 回答

江戶川亂折騰
TA貢獻1851條經驗 獲得超5個贊
問題是您應該在函數中使用協議(例如https://
)Get
:
_, err := http.Get("https://www.google.com")
您原始代碼中的錯誤是Get www.google.com: unsupported protocol scheme ""
.
http.Get()
需要一個 URL,而www.google.com
不是一個 URL;URL 以scheme開頭。盡管在瀏覽器中輸入“www.google.com”很常見,但它仍然不是完整的 URL;友好的瀏覽器會在發出請求前自動添加“http://”或“https://”。 http.Get()
不會那樣做;它期望以格式良好的 URL 開頭。
- 1 回答
- 0 關注
- 119 瀏覽
添加回答
舉報
0/150
提交
取消