本文主要是介绍Go语言之Golang http请求第三方库HttpRequest,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
Golang的第三方http请求包 https://github.com/kirinlabs/HttpRequest
具有快速构建Headers、Cookies、设置超时时间、请求耗时等功能
不管是Get还是Post请求都可以快速构建并发送请求,甚至还支持Put和Delete等方法
当设置req.Debug(true),还可以打印每次请求的相关信息,很方便开发过程中的调试工作
安装:go get:https://github.com/kirinlabs/HttpRequest
实例化:req := HttpRequest.NewRequest()
当请求https协议时提示x509: certificate signed by unknown authority时,可关闭证书验证
req.SetTLSClient(&tls.Config{InsecureSkipVerify: true})
设置超时: req.SetTimeout(5)
打开调试模式:req.Debug(true)
设置Headers:
req.SetHeaders(map[string]string{
"Content-Type": "application/x-www-form-urlencoded", //这也是HttpRequest包的默认设置
})
设置Cookies: req.SetCookies(map[string]string{})
而且还支持连接操作
req := HttpRequest.NewRequest().Debug(true).SetTimeout(5).SetHeader()
获取返回的Response对象
resp.Response()
获取返回码
resp.StatusCode()
获取Body主体信息
resp.Body()
返回[]byte和error
返回信息Json格式化
body,err:=resp.Body()
fmt.Pringln(resp.Json(body))
获取请求耗时
resp.Time() string 单位是毫秒
以下是试用实例代码:
package mainimport ("HttpRequest""fmt""log"
)func main() {req := HttpRequest.NewRequest()// 设置超时时间,不设置时,默认30sreq.SetTimeout(5)// 设置Headersreq.SetHeaders(map[string]string{"Content-Type": "application/x-www-form-urlencoded", //这也是HttpRequest包的默认设置})// 设置Cookiesreq.SetCookies(map[string]string{"sessionid": "LSIE89SFLKGHHASLC9EETFBVNOPOXNM",})postData := map[string]interface{}{"id": 1,"title": "csdn",}// GET 默认调用方法resp, err := req.Get("http://127.0.0.1:8000?name=flyfreely", nil)// GET 传参调用方法// 第2个参数默认为nil,也可以传参map[string]interface{}// 第2个参数不为nil时,会把传入的map以query传参的形式重新构造新url// 新的URL: http://127.0.0.1:8000?name=flyfreely&id=1&title=csdn//resp, err := req.Get("http://127.0.0.1:8000?name=flyfreely", postData)// POST 调用方法//resp, err := req.Post("http://127.0.0.1:8000", postData)if err != nil {log.Println(err)return}if resp.StatusCode() == 200 {body, err := resp.Body()if err != nil {log.Println(err)return}fmt.Println(string(body))fmt.Println(resp.Json(body))}
}
原文:https://blog.csdn.net/flyfreelyit/article/details/80281467
这篇关于Go语言之Golang http请求第三方库HttpRequest的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!