After-part-shared components-一个轻量、通用和可组合的Web路由器,用于构建GoHTTP服务chi
背景
最近,在前端、后端和系统端正在研究各种通用组件和工具,一些通用组件正在重新组织以形成标准化组件主题,将包括多种语言的通用组件。
组件基本信息
- 组件:chi
- 开放源代码:MIT许可证
- 官方网站:go-chi.io
内容
本节分享了一个轻量、常规和兼容的Web路由器Chi用于构建GoHTTP服务,这些服务特别擅长帮助您编写大型REST API服务,可以在项目增长和变化中保持。
chi基于Go 1.7的新版本context用于处理处理链中的信号、取消和请求范围内的值的包构造。
该项目的重点是找到一个优雅舒适的设计来写REST API服务器,设计是在开发支持我们的公共API服务的Pressly API服务期间写的,服务反过来为所有客户应用提供支持。
chi设计的主要考虑因素是项目结构、可维护性、标准的HTTP处理(只有 stdlib)、开发人员的生产力以及大型系统分解成许多小组件。
github.com/go-chi/chi非常小(少于100LOC),但我们还包括一些有用的/可选的子包:中间件、渲染和docgen。image.png特征
- 轻型-用于~100LOC的chi路由器
- 快速-是的,请参阅基线
- 100%互換的net/http-使用任何互換的http或pkg介质在生态系统中
net/http- 模块化/兼容API设计-中间件、互联中间件、路由组和子路由安装
- 背景控制-建立一个新的
context在包装上,提供价值链、取消和加班- Strong - Pressly, Cloudflare, Heroku, 99Designs和其他许多公司 ( 见讨论 )
- 文档生成-
docgen从您的源代码到JSON或Markdown自动生成路径文件- Go.mod 支持 - 从 v5 开始支持 go.mod ( 请参阅 CHANGELOG )
- 没有外部依赖 - 正常 ol' Go stdlib + net/http
具体使用方式如下:
1、安装包
2、使用
更多使用案例
如欲获得更多资料,请参阅有关文件
本文声明:

88x31.png
本文由黄晓文撰写,使用知识共享签名-非商业使用4.0国际许可协议。

