概述
net/http
蕴含了 HTTP 相干办法。
例子
package mainimport ( "errors" "fmt" "io" "net/http")func main() { resp, err := http.Get("https://www.baidu.com") if err != nil { panic(err) } defer func() { err = resp.Body.Close() if err != nil { fmt.Printf("resp.Body.Close() %s", err) } }() fmt.Printf("Response status code = %d\n", resp.StatusCode) fmt.Printf("Response content type = %s\n", resp.Header.Get("Content-Type")) fmt.Printf("Response content length = %d\n", resp.ContentLength) body := make([]byte, resp.ContentLength) n, err := resp.Body.Read(body) if err != nil && !errors.Is(err, io.EOF) { panic(err) } fmt.Printf("Response body read = %d\n", n) fmt.Printf("Response body = %s\n", body)}// $ go run main.go// 输入如下/** Response status code = 200 Response content type = text/html Response content length = 227 Response body read = 227 Response body = <html> <head> <script> location.replace(location.href.replace("https://","http://")); </script> </head> <body> <noscript><meta http-equiv="refresh" content="0;url=http://www.baidu.com/"></noscript> </body> </html>*/