Go 语言的 Gear 框架终于打上了 v1.0.0 的 Tag。API 已经稳定并经过了实际业务场景验证,测试覆盖率也是 100%,一些核心中间件也完成了。然而框架设计文档没有完成,目前只写完了核心部分《Gear 框架设计考量》。
Gear 是由 Teambition 开发的一个轻量级的、专注于可组合扩展和高性能的 Go 语言 Web 服务框架。其设计参考了 Go 生态下现有的近十款 Web 框架和 Node.js 生态的 koa、Toa 等框架。
Demo
package main
import (
"fmt"
"os"
"github.com/teambition/gear"
"github.com/teambition/gear/logging"
)
func main() {
app := gear.New()
// Add logging middleware
app.UseHandler(logging.Default())
// Add router middleware
router := gear.NewRouter()
router.Use(func(ctx *gear.Context) error {
// do some thing.
fmt.Println("Router middleware...", ctx.Path)
return nil
})
router.Get("/", func(ctx *gear.Context) error {
return ctx.HTML(200, "
Hello, Gear!
")})
app.UseHandler(router)
app.Error(app.Listen(":3000"))
}
下载地址:
Source code (zip)
Source code (tar.gz)
网友评论