位置: IT常识 - 正文

使用Go http重试请求

编辑:rootadmin
原文连接:https://www.zhoubotong.site/post/78.html 开发中对于http请求是经常遇到,一般可能网络延迟或接口返回超时,对于发起客户端的请求, 除了设置超时时间外,请求重试是很有必要考虑的,我们不用重复造轮子,可以使用 https://github.com/ra ...

推荐整理分享使用Go http重试请求,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

使用Go http重试请求

原文连接:https://www.zhoubotong.site/post/78.html开发中对于http请求是经常遇到,一般可能网络延迟或接口返回超时,对于发起客户端的请求,

除了设置超时时间外,请求重试是很有必要考虑的,我们不用重复造轮子,可以使用https://github.com/rafaeljesus/retry-go第三方库,

retry-go的使用非常简单,如下是一个发起 HTTP Get 请求的重试示例 :

package mainimport ( "io/ioutil" "log" "net/http" "time" "github.com/rafaeljesus/retry-go")var ( attempts = 3 //最大重试次数 sleepTime = time.Second * 2 //重试延迟时间)func main() { _, err := retry.DoHTTP(func() (*http.Response, error) { return makeRequest() }, attempts, sleepTime) if err != nil { log.Print("retry.DoHTTP Failed") return } log.Print("retry.DoHTTP OK")}// 发送http请求func makeRequest() (*http.Response, error) { client := http.Client{ Timeout: 2 * time.Second, // 设置请求超时时间 } req, err := client.Get("https://www.baidu2.com") // 模拟不存在的url请求 if err != nil { log.Printf(err.Error()) return nil, err } body, err := ioutil.ReadAll(req.Body) if err != nil { log.Printf(err.Error()) return nil, err } log.Printf("响应数据 %v\\n", string(body)) defer req.Body.Close() res := &http.Response{} return res, nil}

运行结果:我们看到尝试执行了指定的3次请求次数。

本文链接地址:https://www.jiuchutong.com/zhishi/304649.html 转载请保留说明!

上一篇:c语言中有哪些循环语句(c语言中有哪些循环结构)

下一篇:phpcms hash数据验证失败怎么解决(php hash_hmac)

  • 优酷手机号不用了怎么解绑(优酷手机号不用了登录不上)

    优酷手机号不用了怎么解绑(优酷手机号不用了登录不上)

  • 页脚文字怎么设置(页脚文字怎么设计)

    页脚文字怎么设置(页脚文字怎么设计)

  • 开心消消乐730关怎么过(开心消消乐730关攻略视频教程)

    开心消消乐730关怎么过(开心消消乐730关攻略视频教程)

  • 华为nova5pro微信怎样分身(华为nova5pro微信视频不提示)

    华为nova5pro微信怎样分身(华为nova5pro微信视频不提示)

  • 华为nova5pro信息通知怎么开启(华为nova5pro信息没有声音)

    华为nova5pro信息通知怎么开启(华为nova5pro信息没有声音)

  • 微信健康码怎样申请(微信健康码怎样添加家人)

    微信健康码怎样申请(微信健康码怎样添加家人)

  • 控制器的主要功能是自动产生控制命令(控制器的主要功能是)

    控制器的主要功能是自动产生控制命令(控制器的主要功能是)

  • 微信怎么改深色模式(微信怎么改深色模式oppo)

    微信怎么改深色模式(微信怎么改深色模式oppo)

  • 抖音拉黑对方是不是就看不到我了(抖音拉黑对方是不是就会移除粉丝)

    抖音拉黑对方是不是就看不到我了(抖音拉黑对方是不是就会移除粉丝)

  • 华为手表微信不显示新内容怎么设置(华为手表微信不通知了)

    华为手表微信不显示新内容怎么设置(华为手表微信不通知了)

  • 电脑内存坏了会出现什么现象(电脑内存坏了会导致黑屏)

    电脑内存坏了会出现什么现象(电脑内存坏了会导致黑屏)

  • 调制解调器(MODEM)的主要功能是(调制解调器(MODEM)的主要功能是( ))

    调制解调器(MODEM)的主要功能是(调制解调器(MODEM)的主要功能是( ))

  • 红米8有nfc功能吗(红米8nfc功能怎么打开)

    红米8有nfc功能吗(红米8nfc功能怎么打开)

  • 苹果新换的电池掉电快(苹果新换的电池充不进去电)

    苹果新换的电池掉电快(苹果新换的电池充不进去电)

  • 华为p30数字耳机功能(华为手机数字耳机)

    华为p30数字耳机功能(华为手机数字耳机)

  • 为什么优酷缓存找不到(为什么优酷缓存的视频不见了)

    为什么优酷缓存找不到(为什么优酷缓存的视频不见了)

  • 美团抢票一般要多久(美团抢票一般要多久才能抢上)

    美团抢票一般要多久(美团抢票一般要多久才能抢上)

  • 5g网络需要换路由器吗(5g网络需要换wifi吗)

    5g网络需要换路由器吗(5g网络需要换wifi吗)

  • 无面容是什么意思(无面容解锁什么意思)

    无面容是什么意思(无面容解锁什么意思)

  • 华为mate30支持5g吗(华为mate30支持5G通话吗)

    华为mate30支持5g吗(华为mate30支持5G通话吗)

  • 手机水货和行货的区别(手机水货和行货的价格差)

    手机水货和行货的区别(手机水货和行货的价格差)

  • 苹果12.2怎么改运营商(苹果改苹果12)

    苹果12.2怎么改运营商(苹果改苹果12)

  • 微信被骗怎么办(网上诈骗24小时内能找回)

    微信被骗怎么办(网上诈骗24小时内能找回)

  • 分享帝国cms网站优化使tags伪静态的实现方法(帝国cms wordpress)

    分享帝国cms网站优化使tags伪静态的实现方法(帝国cms wordpress)

  • 个税预扣预缴扣除项目有哪些
  • 组成计税价格公式消费税
  • 实收资本变动额怎么算
  • 汇算退回的所得税分录
  • 成本费用的关系
  • 企业出租房屋增值税发票怎么开
  • 企业筹办期间发生的开办费会计分录
  • 企业对公账户转法人私户
  • 上交的项目评审费如何做财务处理呢?
  • 实收资本不是资产吗
  • 技术服务行业分析
  • 海关缴款书税号
  • 费用一定计入当期损益吗
  • 营改增后企业出售房产涉税
  • 固定资产报废需要税务备案吗
  • 工程开票是否需要资质?
  • 纳税人必知的十七项增值税开票指南
  • 充值销售技巧和话术总结
  • 企业收到的贷款会计分录
  • 筹建人员是什么工作
  • 银行 环保
  • 碎片化对应什么
  • php数组函数,选班长
  • 双链表的删除操作算法,两条改链语句能调换位置吗?
  • macos使用方法
  • php数组函数 菜鸟
  • "php"
  • 现金流量表的作用和意义
  • laravel自带队列效率
  • phpseessid
  • 直接材料成本计算公式
  • 一般纳税人收到小规模专票怎么抵扣
  • 使用php连接多种数据库
  • 预付卡怎么开票
  • php中定义函数
  • javascript猜数字游戏+表单
  • php数组怎么实现的
  • php登录流程
  • lastlog日志
  • 是否就地汇总纳税
  • 会计在账本上怎么记账
  • 上市公司发行股票会计分录
  • 什么是固定资产?其特征有哪些
  • 将织梦dedecms转换到wordpress
  • 手续费及佣金支出核算
  • 如何查询金税盘发票金额及开票数量
  • 新版个税申报系统查询
  • 金税盘申报流程视频
  • 税控盘维护费全额抵扣分录
  • 递延收益分摊是当月还是次月
  • 未分配利润转增股本 企业所得税
  • mysql的存储引擎有哪些,区别是什么
  • 生产经营个人所得税税率表
  • 短期偿债能力是企业的任何利益关系人都
  • 房地产会计开发工资高吗
  • 股东捐赠资产要纳税吗
  • 收入费用表本期盈余与资产负债表不一致
  • 房屋租赁不开发票需要交税吗
  • 阶段性减免企业社保费实施政策对象
  • 车辆按揭利息财务怎么算
  • 债务重组的方式不包括债务转为资本
  • 营改增税法
  • 苗木免税发票可以开专票吗
  • 记账凭证如何填写明细科目
  • 设置共享时可使用的权限
  • 对Windows Server 2008系统自带的磁盘分区进行无损分区的教程图文介绍
  • open bsd
  • VM虚拟机安装Harmonyos4
  • 乾坤大挪移秘籍图片
  • win7系统出现蓝屏
  • win10大更新2020
  • 升级linux版本
  • python闭包的条件
  • shell脚本判断两个数大小
  • jquery中删除节点方法
  • JavaScript中getUTCSeconds()方法的使用详解
  • python搭建网站并在服务器上部署
  • 新车怎么上深圳牌
  • 国家税务局全国增值税
  • 中央财经大学法学院
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设