如何在Go中发送HTTP请求?
大家好!请告诉我如何在Go中正确执行HTTP GET请求并获取服务器响应。我是这门语言的新手,在尝试从外部API获取数据时遇到了问题。
目前我使用标准库net/http,但我的代码似乎卡住了,没有返回结果。以下是我尝试过的代码:
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
resp, err := http.Get("https://api.example.com/data")
if err != nil {
fmt.Println("错误:", err)
return
}
defer resp.Body.Close()
body, err := ioutil.ReadAll(resp.Body)
if err != nil {
fmt.Println("读取错误:", err)
return
}
fmt.Println(string(body))
}问题在于程序只是挂起没有输出,我既看不到错误也看不到数据。我已经确认URL是有效的(通过curl测试一切正常)。我怀疑问题可能在于缺少超时设置。