• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

一个简单的用go实现的restful框架gorest

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

a restful go framework

install

go get github.com/ejunjsh/gorest

usage

import

import "github.com/ejunjsh/gorest"

create a app and run a server

app:=gorest.NewApp()
app.[Get/Post/Delete/Put/Error]
app.Run(":8081")

supports 4 methods of http request

app.Get("/", func(r *gorest.HttpRequest, w gorest.HttpResponse) error {...})
app.Post("/", func(r *gorest.HttpRequest, w gorest.HttpResponse) error {...})
app.Delete("/", func(r *gorest.HttpRequest, w gorest.HttpResponse) error {...})
app.Put("/", func(r *gorest.HttpRequest, w gorest.HttpResponse) error {...})

supports parameters from url path

app.Get("/:abc/:cba", func(r *gorest.HttpRequest, w gorest.HttpResponse) error {
        fmt.Println(w.PathParams["abc"],w.PathParams["cba"])
        return nil
})

supports string,json,xml,file,template as result of return

app.Get("/", func(r *gorest.HttpRequest, w gorest.HttpResponse) error {
        return  w.WriteJson(jsonObj)
                //w.WriteString(str)
                //w.WriteXml(xmlObj)
                //w.WriteFile("/Users/zhouff/file.txt")
                //w.WriteTemplates(data,"/Users/zhouff/index.html","/Users/zhouff/header.html")
})

supports dealing with errors

app.Error(func(err error, r *gorest.HttpRequest, w gorest.HttpResponse){
        if e,ok:=err.(gorest.NoFoundError);ok {
            w.Write([]byte(e.Error()))
        }
        if e,ok:=err.(gorest.InternalError);ok {
            w.Write([]byte(e.Error()))
        }
})

example

授权协议:
开发语言:
go 查看源码»

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
go语言笔记——数组长度不可变,但是元素值是可变的!!!发布时间:2022-07-10
下一篇:
GO语言数组,切片,MAP总结发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap