沉默之都

沉默,造就了我们的冷酷-程序的威力
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

Go语言,2009年推出,对我个人,2015年下半年,才下定决心正式开始引入使用Go,自此,让我获得了一种全新的开发体验。

在不断的项目过程中,一个开发人员总喜欢堆积一些代码段,由于Go的开源特性,逐步诞生了开发一些框架的想法,自此,dotweb - 一个简约大方的go Web微型框架 诞生了。

自然而然的,这个项目是开源的。

github地址:https://github.com/devfeel/dotweb

文章目录:

1、dotweb框架之旅 [一] - HelloWorld

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  欢迎大家提出建议,甚至批评:)