当前位置: 首页 > news >正文

Gentleman:优雅的Go语言HTTP客户端工具包

gentlemen介绍,特点等

插件驱动架构:Gentleman的核心特点是其插件系统,允许用户注册和重用各种自定义插件,如重试策略或动态服务器发现,以增强HTTP客户端的功能。
中间件层:项目内置了一个上下文感知的层次结构中间件,支持所有HTTP生命周期的不同阶段。这使得在请求过程中进行数据拦截和修改变得简单。
依赖于标准库:尽管提供了高级抽象,但Gentleman是基于Go的net/http标准库构建的,因此保持了良好的idiomatic特性,易于理解和使用。

除了Go的标准库,Gentleman没有额外的依赖项,确保轻量级和稳定的使用体验

是什么?
gentleman是一个功能齐全、插件驱动的 HTTP 客户端,gentleman以扩展性为原则,可以基于内置的或第三方插件创建具有丰富特性的、可复用的 HTTP 客户端。相比go的标准库net/http,gentleman更灵活、易用。

怎么使用?
gentleman的使用遵循下面的流程:

调用gentleman.New()创建一个 HTTP 客户端cli,此cli对象可复用;
调用cli.URL()设置要请求的 URL 基础地址;
调用cli.Request()创建一个请求对象req;
调用req.Path()设置请求的路径,基于前面设置的 URL;
调用req.Header()设置请求首部(Header),上面代码设置首部Client为gentleman;
调用req.Send()发送请求,获取响应对象res;
对响应对象res进行处理。
————————————————

                        版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

原文链接:https://blog.csdn.net/u013302168/article/details/123825839

插件如何使用?
调用客户端对象cli或请求对象req的Use()方法使用插件。

区别在于cli.Use()调用之后,所有通过该cli创建的请求对象都使用该插件;
req.Use()只对该请求生效,在本例中使用req.Use(body.JSON(data))也是可以的。

相关文章:

  • 【GESP】2024年12月图形化一级 -- 火箭回收
  • Anchor-Based 与 Anchor-Free
  • 通过VSCode直接连接使用 GPT的编程助手
  • python003-python电影数据分析及可视化系统建设(源码+数据库+部署讲解等)
  • iOS开发书籍推荐 - 《高性能 iOS应用开发》(附带链接)
  • 深度求索-DeepSeek-R1本地部署指南
  • UART(一)——UART基础
  • 遥感影像目标检测:从CNN(Faster-RCNN)到Transformer(DETR)
  • 第3章 .NETCore核心基础组件:3.1 .NET Core依赖注入
  • 申论对策建议类【2022江苏B卷第一题“如何开展网络直播”】
  • OpenCV图像基本操作
  • 期权帮|股指期货的有效止盈止损策略?
  • Unsloth
  • 软件定义汽车时代的功能安全和信息安全
  • 【MySQL】第六弹---数据库表约束详解:从空属性到主键的全方位指南
  • EtherNet/IP转Modbus TCP:新能源风电监控与分析实用案例
  • uniapp webview嵌入外部h5网页后的消息通知
  • 就是第七题
  • 【前端学习笔记】Webpack
  • pod控制器
  • 网站的在线支付模块怎么做/中国联通和腾讯
  • 高端建设网站公司/谷歌广告投放教程
  • 微网站建设企划书/经典广告
  • 如何做自己的论坛网站/国内10大搜索引擎
  • 深圳房产网站建设/凡科建站代理登录
  • 怎么做网站主/谷歌应用商店