位置: 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)

  • 美团优选怎么买东西(美团优选怎么买东西便宜)

    美团优选怎么买东西(美团优选怎么买东西便宜)

  • 白条全部还清怎么还(白条全部还清怎么关闭)

    白条全部还清怎么还(白条全部还清怎么关闭)

  • 微信运动怎么关闭(微信运动怎么关闭让别人看不到)

    微信运动怎么关闭(微信运动怎么关闭让别人看不到)

  • 苹果xr怎么添加门禁卡(苹果xr怎么添加小组件)

    苹果xr怎么添加门禁卡(苹果xr怎么添加小组件)

  • 卡贴机可以换卡吗(卡贴机可以换卡重新激活吗)

    卡贴机可以换卡吗(卡贴机可以换卡重新激活吗)

  • 小米手机坏了怎么导出照片(小米手机坏了怎么导出数据)

    小米手机坏了怎么导出照片(小米手机坏了怎么导出数据)

  • 华为手机出厂设置后数据能否恢复(华为手机出厂设置怎么恢复)

    华为手机出厂设置后数据能否恢复(华为手机出厂设置怎么恢复)

  • 0点抢在购物车要刷新吗(0点抢在购物车里怎么办)

    0点抢在购物车要刷新吗(0点抢在购物车里怎么办)

  • airpods可以用手机充电器吗(airpods可以用手机充电吗)

    airpods可以用手机充电器吗(airpods可以用手机充电吗)

  • vivo s6什么时候上市的(vivo s6什么时候上市的它的主打是什么)

    vivo s6什么时候上市的(vivo s6什么时候上市的它的主打是什么)

  • 优酷花芝卡是什么意思(优酷花之卡怎么查看)

    优酷花芝卡是什么意思(优酷花之卡怎么查看)

  • 华为p40听筒在哪里(华为p60用什么耳机)

    华为p40听筒在哪里(华为p60用什么耳机)

  • 微信充值是什么意思(微信充值是什么功能)

    微信充值是什么意思(微信充值是什么功能)

  • 微信群被恶意举报怎么申诉(微信群被恶意举报封了怎么办)

    微信群被恶意举报怎么申诉(微信群被恶意举报封了怎么办)

  • 红米note8怎么设置息屏预览(红米note8怎么设置上滑退出)

    红米note8怎么设置息屏预览(红米note8怎么设置上滑退出)

  • 华为mate30怎么设置通知亮屏(华为mate30怎么设置桌面钟表)

    华为mate30怎么设置通知亮屏(华为mate30怎么设置桌面钟表)

  • word文档怎么调整页面(word文档怎么调大小)

    word文档怎么调整页面(word文档怎么调大小)

  • 惠普3630恢复出厂设置(惠普deskjet3636恢复出厂设置)

    惠普3630恢复出厂设置(惠普deskjet3636恢复出厂设置)

  • ddr4双通道是迷信吗(ddr5 双通道)

    ddr4双通道是迷信吗(ddr5 双通道)

  • 小米8充电口松动(小米8充电口松了怎么办)

    小米8充电口松动(小米8充电口松了怎么办)

  • 手机截屏的快捷键是什么(手机截屏快捷键)

    手机截屏的快捷键是什么(手机截屏快捷键)

  • qq四叶草会掉吗(qq四叶草断了能恢复吗)

    qq四叶草会掉吗(qq四叶草断了能恢复吗)

  • 搜狗搜索如何开启阅读模式(搜狗搜索如何开通)

    搜狗搜索如何开启阅读模式(搜狗搜索如何开通)

  • 如何解决Win10浏览器打不开网页但能上网?(新win10浏览器)

    如何解决Win10浏览器打不开网页但能上网?(新win10浏览器)

  • 个人独资企业生活费用和经营费用混在一起的
  • 偶然所得个人所得税会计分录
  • 税务机关内部控制措施
  • 非税收入一般缴款书一式几联
  • 年初未分配利润和年末未分配利润的关系
  • 社保公积金占比多少
  • 私募基金管理公司
  • 房产过户需要缴纳土地出让金吗
  • 免抵退税怎么做账
  • 未发货先开票怎么结转成本
  • 小规模个人所得税怎么申报
  • 促销赠品的会计处理
  • 购销合同印花税怎么算
  • 公司为员工买保险好还是个体户为员工买保险好
  • 开具的增值税发票丢失最新处理办法
  • 税控专用发票和普通发票
  • 三证合一后没有去税务局登记会怎么样
  • 固定资产怎么进入生产成本
  • 高新企业职工食堂承包方案
  • 收到的增值税专用发票如何认证
  • 加计抵减怎么做账务处理小企业会计准则
  • 公司取得的营业收入
  • 打印机5b00错误解决
  • php array_splice
  • 无法打开exe程序
  • linux用不了yum
  • PHP:mb_stripos()的用法_mbstring函数
  • php数组函数题目
  • 房产税计税的税率可分为
  • 违约罚款的会计分录
  • 退回的企业所得税怎么做账
  • php连接不上数据库sql
  • javascript手机版
  • ubuntu20.04.1安装
  • 二维码的实现原理和实现过程
  • 为什么我会选择那个对我一般的男人结婚
  • critical_section 结构
  • ptech模型
  • 机器学习——感知机
  • php require函数
  • dd命令拷贝磁盘
  • python htmltestrunner报告
  • 帝国cms wordpress
  • 增值税专用发票几个点
  • 携程 海外
  • 预收账款挂多久确认收入
  • 如何进行会计制度改革
  • 企业账户在银行买黄金可以开发票吗
  • 库存商品毁损的会计分录
  • 个人所得税相关会计分录
  • 欠款在公司注销怎么处理
  • 固定资产当月入账当月计提吗
  • 收到员工社保
  • 生产车间包括什么
  • 小规模可以开红网吗
  • 新公司季初资产总额填什么
  • 新办企业建账
  • 数据库中的内容怎么换行
  • win2003 enterprise序列号
  • windows server 2008 硬盘格式
  • 升级bios后无法启动
  • windows磁盘如何分区
  • win8 怎么样
  • mac笔记软件推荐
  • linux无法运行yum
  • 升级 win10
  • 磁盘限制
  • linux图形界面与命令行
  • win10移动版能运行电脑软件吗
  • 计算机图形学考研院校
  • androidsocket原理
  • javascript数组去重set方法
  • js动态给table添加行
  • js鼠标点击事件监听
  • jq获取table元素
  • 支付宝中油好客e站怎么开发票
  • 从国外进口到国内销售的商品
  • 广东省地税局网上办税
  • 划拨土地是否可以出租的法律规定
  • 北京一证通如何安装安全控件
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设