Go语言,2009年推出,对我个人,2015年下半年,才下定决心正式开始引入使用Go,自此,让我获得了一种全新的开发体验。
在不断的项目过程中,一个开发人员总喜欢堆积一些代码段,由于Go的开源特性,逐步诞生了开发一些框架的想法,自此,dotweb - 一个简约大方的go Web微型框架 诞生了。
自然而然的,这个项目是开源的。
github地址:https://github.com/devfeel/dotweb
文章目录:
2、dotweb框架之旅 [二] - 常用对象-App(dotweb)
3、dotweb框架之旅 [三] - 常用对象-HttpServer
4、dotweb框架之旅 [四] - 常用对象-HttpContext
安装:
go get -u github.com/devfeel/dotweb
快速开始:
func StartServer() error { //初始化DotServer app := dotweb.New() //设置路由 app.HttpServer.Router().GET("/index", func(ctx dotweb.Context) error { ctx.WriteString("welcome to my first web!") return nil }) //开始服务 return app.StartServer(80) }
特性
- 支持静态路由、参数路由、组路由
- 路由支持文件/目录服务,支持设置是否允许目录浏览
- HttpModule支持,支持路由之前全局级别的自定义代码能力
- 中间件支持,支持App、Group、Router级别的设置 - https://github.com/devfeel/middleware
- Feature支持,可绑定HttpServer全局启用
- 支持STRING/JSON/JSONP/HTML格式输出
- 统一的HTTP错误处理
- 统一的日志处理
- 支持Hijack与websocket
- 内建Cache支持
- 内建TLS支持
- 支持接入第三方模板引擎(需实现dotweb.Renderer接口)
- 模块可配置化,85%模块可通过配置维护
- 自集成基础统计数据,并支持按分钟为单位的间隔时间统计数据输出
更多的介绍,大家可以访问项目主页:https://github.com/devfeel/dotweb 了解更多。
后续也会持续的写范例和文档。
目前,dotweb处于较频繁的迭代过程,目前最新版本已经1.3,我会尽量保持向下兼容,特别的,目前的版本完全可用于生产。
如果大家感兴趣,可以在github关注我,或者加入Q群:193409346 欢迎大家提出建议,甚至批评:)