echo
v4.12.0
高性能、可扩展、简约的 Go Web 框架。
官方网站
快速启动
中间件
帮助和问题:Github 讨论
优化的 HTTP 路由器,可智能地确定路由的优先级
构建强大且可扩展的 RESTful API
组API
可扩展的中间件框架
在根、组或路由级别定义中间件
JSON、XML 和表单负载的数据绑定
发送各种 HTTP 响应的便捷功能
集中式 HTTP 错误处理
使用任何模板引擎进行模板渲染
定义记录器的格式
高度可定制
通过 Let's Encrypt 自动 TLS
HTTP/2 支持
Encore – 用于构建基于 Go 的云后端的平台
单击此处了解有关赞助的更多信息。
日期:2020年11月11日
来源:https://github.com/vishr/web-framework-benchmark
越低越好!
上述基准测试在 Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz 上运行
// 获取 github.com/labstack/echo/{version} 去获取 github.com/labstack/echo/v4
最新版本的 Echo 支持最后四个 Go 主要版本,并且可能适用于旧版本。
包 mainimport (“github.com/labstack/echo/v4” “github.com/labstack/echo/v4/middleware” "net/http")func main() { // Echo 实例 e := echo.New() // 中间件 e.Use(middleware.Logger()) e.Use(middleware.Recover()) // 路由 e.GET("/", hello) // 启动服务器 e.Logger.Fatal(e.Start(":1323")) }// Handlerfunc hello(c echo.Context) error { return c.String(http.StatusOK, "Hello, World!") }
以下中间件列表由 Echo 团队维护。
存储库 | 描述 |
---|---|
github.com/labstack/echo-jwt | JWT中间件 |
github.com/labstack/echo-contrib | casbin、gorilla/sessions、jaegertracing、prometheus、pprof、zipkin 中间件 |
添加第 3 方中间件时要小心。 Echo团队没有时间和人力来保证此列表中中间件的安全和质量。
存储库 | 描述 |
---|---|
深度地图/oapi-codegen | 使用 OpenAPI 客户端和服务器代码生成器自动生成 RESTful API 文档 |
github.com/swaggo/echo-swagger | 使用 Swagger 2.0 自动生成 RESTful API 文档。 |
github.com/ziflex/lecho | Echo 记录器接口的 Zerolog 日志记录库包装器。 |
github.com/brpaz/echozap | Uber 的 Zap 日志记录库包装器用于 Echo 记录器接口。 |
github.com/samber/slog-echo | Echo 记录器接口的 Go slog 日志记录库包装器。 |
github.com/darkweak/souin/plugins/echo | 基于 Souin 的 HTTP 缓存系统可自动缓存您的端点。它根据您的需求支持一些分布式和非分布式存储系统。 |
github.com/mikestefanello/pagoda | 使用 Echo 构建的快速、简单的全栈 Web 开发入门套件。 |
github.com/go-woo/protoc-gen-echo | ProtoBuf生成Echo服务器端代码 |
请在此处发送 PR 以添加您自己的库。
将问题用于一切
对于一个小改动,只需发送 PR 即可。
对于更大的更改,请在发送 PR 之前打开一个问题进行讨论。
公关应该有:
测试用例
文档
示例(如果有意义的话)
您还可以通过以下方式做出贡献:
报告问题
建议新功能或增强功能
改进/修复文档
维沙尔·拉纳 (作者)
尼廷·拉纳(顾问)
罗兰·拉梅尔(维护者)
Martti T.(维护者)
巴勃罗·安德烈斯·富恩特(维护者)
贡献者
麻省理工学院