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, "<h1>Hello, Gear!</h1>")
})
app.UseHandler(router)
app.Error(app.Listen(":3000"))
}下载地址: |