go服务端----使用dotweb框架搭建简易服务

pzrr · · 3443 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

使用dotweb框架搭建简易服务

go语言web框架挺多的,所谓琳琅满目,里面也有很多优秀的,比如echo、beego等,但体验下来,总是觉得哪里有点小疙瘩,后来才明白过来,echo太简单,很多日常使用的基础模块不具备,需要额外实现,而beego又是太完善,虽然可定制化,但需要熟悉的过程,于是,二话不说,准备了一款"中间态"go-web框架 - dotweb,据说,在几个go比较活跃的群里还是很"非著名"的:)

也希望更多的人能了解到dotweb,能够提出一些建议和思路,感激不尽!

二话不说,github地址:https://github.com/devfeel/dotweb

 

下面贴一下用dotweb搭建一个简易的应用服务的代码片段,非常的简单,看一下代码注释也很容易理解。

 1 import "github.com/devfeel/dotweb"
 2 
 3 func main() {
 4     //init DotApp
 5     app := dotweb.New()
 6     //set route
 7     app.HttpServer.Router().GET("/index", func(ctx dotweb.Context) error{
 8         _, err := ctx.WriteString("welcome to my dot web!")
 9         return err
10     })
11     //begin server
12     fmt.Println(app.StartServer(80))
13 }

以上是一个非常简单的Web服务,下面来看一个稍微复杂点的:

func main() {
    //初始化DotServer
    app := dotweb.New()

    //设置dotserver日志目录
    //如果不设置,默认不启用,且默认为当前目录
    app.SetEnabledLog(true)

    //开启development模式
    app.SetDevelopmentMode()

    //设置gzip开关
    app.HttpServer.SetEnabledGzip(true)

    //设置Session开关
    app.HttpServer.SetEnabledSession(true)

    //设置Session配置
    app.HttpServer.SetSessionConfig(session.NewDefaultRuntimeConfig())

    //设置路由
    InitRoute(app.HttpServer)

    //自定义404输出
    app.SetNotFoundHandle(func(w http.ResponseWriter, req *http.Request) {
        w.WriteHeader(http.StatusNotFound)
        w.Write([]byte("is't app's not found!"))
    })

    // 开始服务
    port := 8080
    fmt.Println("dotweb.StartServer => " + strconv.Itoa(port))
    err := app.StartServer(port)
    fmt.Println("dotweb.StartServer error => ", err)
}

这样让大家有一个基本的印象。

这里只是快速上手的一些方法,作为一个web服务框架,功能还是会比较多的,后续陆续整理,提供给大家。

 

另外,欢迎各位加入我们的go语言QQ群:193409346

 


有疑问加站长微信联系(非本文作者)

本文来自:博客园

感谢作者:pzrr

查看原文:go服务端----使用dotweb框架搭建简易服务

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

3443 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传