beego httplib

httplib簡單使用
req := httplib.Get("http://beego.me/")
str, err := req.String()
if err != nil {
    t.Fatal(err)
}
fmt.Println(str)
支持的請求方法
Get(url string)
Post(url string)
Put(url string)
Delete(url string)
Head(url string)
支持超時(shí)
req.SetTimeout(connectTimeout, readWriteTimeout)
httplib.Get("http://beego.me/").SetTimeout(100 * time.Second, 30 * time.Second)
設(shè)置請求參數(shù)
1. 方法一
req := httplib.Post("http://beego.me/")
req.Param("username","astaxie")
req.Param("password","123456")
2. 方法二
req := httplib.Post("http://127.0.0.1:9999")
req.JSONBody(map[string]interface{}{"jsonrpc":"2.0","method":"eth_blockNumber","id":83})
var js interface{}
req.ToJSON(&js)
fmt.Println(js)
3. 方法三 發(fā)送大片的數(shù)據(jù)
req := httplib.Post("http://beego.me/")
bt,err:=ioutil.ReadFile("hello.txt")
if err!=nil{
    log.Fatal("read file err:",err)
}
req.Body(bt)
設(shè)置header信息
req := httplib.Post("http://beego.me/")
req.Header("Accept-Encoding","gzip,deflate,sdch")
req.Header("Host","beego.me")
直接上傳文件
PostFile 第一個(gè)參數(shù)是 form 表單的字段名,第二個(gè)是需要發(fā)送的文件名或者文件路徑
b:=httplib.Post("http://beego.me/")
b.Param("username","astaxie")
b.Param("password","123456")
b.PostFile("uploadfile1", "httplib.pdf")
b.PostFile("uploadfile2", "httplib.txt")
str, err := b.String()
if err != nil {
    t.Fatal(err)
}
獲取返回結(jié)果
1. 返回 Response 對象,req.Response() 方法
   這個(gè)是 http.Response 對象,用戶可以自己讀取 body 的數(shù)據(jù)等。

2. 返回 bytes,req.Bytes() 方法
   直接返回請求 URL 返回的內(nèi)容

3. 返回 string,req.String() 方法
   直接返回請求 URL 返回的內(nèi)容

4. 保存為文件,req.ToFile(filename) 方法
   返回結(jié)果保存到文件名為 filename 的文件中

5. 解析為 JSON 結(jié)構(gòu),req.ToJSON(&result) 方法
   返回結(jié)構(gòu)直接解析為 JSON 格式,解析到 result 對象中

6. 解析為 XML 結(jié)構(gòu),req.ToXml(&result) 方法
   返回結(jié)構(gòu)直接解析為 XML 格式,解析到 result 對象中
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容