ZBLOG

golang resty 使用

  1. 导入包

首先,需要导入resty库:

  1. import (
  2. "github.com/go-resty/resty/v2"
  3. )
  1. 创建一个Resty客户端

接下来,可以创建一个Resty客户端:

  1. client := resty.New()
  1. 发送HTTP请求

发送HTTP请求有两种方式:链式调用和使用方法。

链式调用示例如下:

  1. resp, err := client.R().
  2. SetHeader("Content-Type", "application/json").
  3. SetBody(requestBody).
  4. Post(url)

使用方法的示例如下:

  1. req := client.R()
  2. req.SetHeader("Content-Type", "application/json")
  3. req.SetBody(requestBody)
  4. resp, err := req.Post(url)

其中,url为请求的URL地址,requestBody为请求体。

  1. 解析响应

发送请求后,可以通过resp对象获取响应数据。如下所示:

  1. statusCode := resp.StatusCode()
  2. body := resp.Body()

可以使用resp.Result()方法获取完整的响应结果(Response):

  1. result := resp.Result()
  1. 处理错误

在处理HTTP请求时,可能会遇到错误。为了捕获这些错误,可以使用err变量。当出现错误时,它将包含一个非空值。

  1. if err != nil {
  2. // Handle error
  3. }
  1. 设置超时时间

可以通过以下方式设置超时时间:

  1. client.SetTimeout(30 * time.Second)
  1. 设置代理

可以通过以下方式设置代理:

  1. proxyURL, _ := url.Parse("http://localhost:8080")
  2. client.SetProxy(proxyURL)
  1. 设置请求头

可以通过以下方式设置请求头:

  1. client.R().SetHeader("Authorization", "Bearer xxxxxxxx")
  1. 发送GET请求

发送GET请求的示例代码如下:

  1. resp, err := client.R().
  2. SetHeader("Content-Type", "application/json").
  3. Get(url)
  1. 发送POST请求

发送POST请求的示例代码如下:

  1. resp, err := client.R().
  2. SetHeader("Content-Type", "application/json").
  3. SetBody(requestBody).
  4. Post(url)
  1. 发送PUT请求

发送PUT请求的示例代码如下:

  1. resp, err := client.R().
  2. SetHeader("Content-Type", "application/json").
  3. SetBody(requestBody).
  4. Put(url)
  1. 发送DELETE请求

发送DELETE请求的示例代码如下:

  1. resp, err := client.R().
  2. SetHeader("Content-Type", "application/json").
  3. Delete(url)

以上就是resty的基本使用方法。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=801

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?