httpreq
httpreq 是一个用Golang编写的http请求库,可以轻松地提出请求和处理响应。
安装
go get github.com/binalyze/httpreq
概述
httpreq 在 Go 现有的net/http 库上实现了一个友好的 API。
Req 和Response 是两个最重要的结构。你可以把Req 看作是发起HTTP请求的客户端,Resp 是请求和响应的信息容器。它们都提供了简单方便的API,让你可以做很多事情。
req := httpreq.New(url)
resp, err := req.Get()
路线图
- 支持查询参数
- 支持cookies
- 支持XML
- 支持代理
- 可配置的传输
使用方法
下面是一个使用httpreq 的一些辅助方法的例子。你可以在测试文件中找到更多的例子。
请求
// Create new request
req := httpreq.New("https://your-address-to-send-json.com")
// Set Timeout
req.SetTimeout(30 * time.Second)
// Set Header (i.e. JWT Bearer Token)
var bearer = "Bearer " + <ACCESS TOKEN HERE>
req.SetHeaders(map[string]string{"Authorization": bearer})
// Set Content Type
req.SetContentType("application/json")
// Set JSON raw body
info := &Data{
FirstName: "John",
LastName: "Doe",
Age: 42,
}
jsonData, _ := json.Marshal(info)
req.SetBody(jsonData)
// Send Request
resp, _ := req.Post()
响应
// Body
result, err := resp.Body()
// Original response
response := resp.Response()
// StatusCode
statusCode := resp.StatusCode()
// Headers
headers := resp.Headers()