代码拉取完成,页面将自动刷新
正如项目的名称,你可以从本代码开始你的web api之旅 本项目是用于开发web api的基础代码,包含Router,基础的json序列化等 你可以直接clone一份本代码,然后在此基础上开发你的web api.
#功能:
- 类似 express 3.x的路由
- URL参数
- 基础的json序列化
- some convenient function
#为什么: 从NodeJs转到go,习惯了使用express框架的我在go中找不到类似的框架,虽然有martin和gin 但是我任然很难习惯,所以就写了一些代码模仿express的功能,让自己尽快的适应go中web api的 开发工作.
#需要做的:
- Form表达解析(各种MIME)
- 更丰富的json序列化支持
- Cookies操作
- Session支持
- 中间件
- 脚手架
#Usage
handler := NewHanlder()
handler.AddRouter("/user/login", func(c *context.Context) {
j := NewJson()
j.BeginObject("user")
j.BeginArray("products")
j.BeginObject("")
j.Add("id", "123456")
j.Add("id", 3.1415926)
j.EndObject()
j.EndArray()
j.EndObject()
c.Json(j.ToString())
})
handler.AddRouter("/user/:userid/profile", func(c *context.Context) {
j := NewJson()
j.BeginObject("user")
j.Add("id", c.Params["userid"])
j.Add("username", "yourname")
j.Add("avatar", "http://git.oschina.net/logo.gif")
j.Add("balance", 3.1415926)
j.EndObject()
c.Json(j.ToString())
})
handler.Start(":80")
#性能测试
#路由
PASS
BenchmarkRouter 1000000 1013 ns/op
ok proj 1.064s
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。