http的响应数据是封装在response中的,如果需要获取响应的具体内容我们可以通过下面的方法简单获取到
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func responseBody(r *http.Response){
content, _ := ioutil.ReadAll(r.Body)
fmt.Printf("%s", content)
//{
// "args": {},
// "headers": {
// "Accept-Encoding": "gzip",
// "Host": "httpbin.org",
// "User-Agent": "Go-http-client/1.1",
// "X-Amzn-Trace-Id": "Root=1-60e46d3a-016b7ff6190e1c577abb9c40"
//},
// "origin": "222.211.214.252",
// "url": "http://httpbin.org/get"
//}
}
func status(r *http.Response){
fmt.Println(r.StatusCode) //状态吗 200
fmt.Println(r.Status) //状态描述 200 OK
}
func header(r *http.Response){
str := r.Header.Get("Content-type")
fmt.Println(str)
}
func main(){
resp, err := http.Get("http://httpbin.org/get")
if err != nil {
panic(err)
}
defer func() {_ = resp.Body.Close()}()
responseBody(resp)
status(resp)
header(resp)
}
版权声明:本文为weixin_38299404原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。