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)
支持超时
req.SetTimeout(connectTimeout, readWriteTimeout)
httplib.Get("http://beego.me/").SetTimeout(100 * time.Second, 30 * time.Second)
设置请求参数
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. 方法三 发送大片的数据
req := httplib.Post("http://beego.me/")
bt,err:=ioutil.ReadFile("hello.txt")
if err!=nil{
    log.Fatal("read file err:",err)
}
req.Body(bt)
设置header信息
req := httplib.Post("http://beego.me/")
req.Header("Accept-Encoding","gzip,deflate,sdch")
req.Header("Host","beego.me")
直接上传文件
PostFile 第一个参数是 form 表单的字段名,第二个是需要发送的文件名或者文件路径
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)
}
获取返回结果
1. 返回 Response 对象,req.Response() 方法
   这个是 http.Response 对象,用户可以自己读取 body 的数据等。

2. 返回 bytes,req.Bytes() 方法
   直接返回请求 URL 返回的内容

3. 返回 string,req.String() 方法
   直接返回请求 URL 返回的内容

4. 保存为文件,req.ToFile(filename) 方法
   返回结果保存到文件名为 filename 的文件中

5. 解析为 JSON 结构,req.ToJSON(&result) 方法
   返回结构直接解析为 JSON 格式,解析到 result 对象中

6. 解析为 XML 结构,req.ToXml(&result) 方法
   返回结构直接解析为 XML 格式,解析到 result 对象中

你可能感兴趣的:(beego httplib)