可以使用 Go 自带的 net/http 来发送 HTTP 请求。 下面是一个简单的例子,展示了如何发送一个 GET 请求并打印响应的内容: ``` package main import ( "fmt" "io/ioutil" "net/http" ) func main() { resp, err := http.Get("http://www.example.com") 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)) } ``` 在这个例子中,我们使用了 net/http 中的 Get 函数来发送 GET 请求。Get 函数返回一个 http.Response 类型的响应和可能出现的错误。我们通过调用 resp.Body.Close 来关闭响应体,并使用 ioutil 中的 ReadAll 函数来读取响应体中的内容。 如果要发送其他类型的 HTTP 请求,比如 POST、PUT 或 DELETE,可以使用 http 中的其他函数,比如 Post、Put 和 Delete。这些函数的用法与 Get 类似,只是请求方法不同而已。 例如,下面的例子展示了如何发送一个 POST 请求: ``` package main import ( "bytes" "fmt" "io/ioutil" "net/http" ) func main() { data := []byte("hello world") resp, err := http.Post("http://www.example.com", "text/plain", bytes.NewReader(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