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.(維護者)
巴勃羅·安德烈斯·富恩特(維護者)
貢獻者
麻省理工學院