diff --git a/g/net/ghttp/ghttp_response.go b/g/net/ghttp/ghttp_response.go index e6271adb2..1247d22df 100644 --- a/g/net/ghttp/ghttp_response.go +++ b/g/net/ghttp/ghttp_response.go @@ -75,6 +75,7 @@ func (r *Response) Write(content ... interface{}) { // 返回信息,末尾增加换行标识符"\n" func (r *Response) Writeln(content ... interface{}) { if len(content) == 0 { + r.Write("\n") return } content = append(content, "\n") diff --git a/geg/net/ghttp/server/router/router1.go b/geg/net/ghttp/server/router/router1.go index 144239513..6d3ef71f0 100644 --- a/geg/net/ghttp/server/router/router1.go +++ b/geg/net/ghttp/server/router/router1.go @@ -8,7 +8,7 @@ import ( func main() { s := g.Server() s.BindHandler("/:name", func(r *ghttp.Request){ - r.Response.Writeln(r.Router.Uri) + r.Response.Writeln(r.Router.Uri) }) s.BindHandler("/:name/update", func(r *ghttp.Request){ r.Response.Writeln(r.Router.Uri) @@ -17,9 +17,9 @@ func main() { r.Response.Writeln(r.Router.Uri) }) s.BindHandler("/:name/*any", func(r *ghttp.Request){ - r.Response.Writeln(r.Router.Uri) + r.Response.Writeln(r.Router.Uri) }) - s.BindHandler("/user/list/{page}.html", func(r *ghttp.Request){ + s.BindHandler("/user/list/{field}.html", func(r *ghttp.Request){ r.Response.Writeln(r.Router.Uri) }) s.SetPort(8199) diff --git a/geg/net/ghttp/server/router/router3.go b/geg/net/ghttp/server/router/router3.go index a509fe4a3..43ce60a99 100644 --- a/geg/net/ghttp/server/router/router3.go +++ b/geg/net/ghttp/server/router/router3.go @@ -12,8 +12,8 @@ func main() { r.Response.Writeln(r.Get("page")) }) // {xxx} 规则与 :xxx 规则混合使用 - s.BindHandler("/{obj}/:attr/{act}.php", func(r *ghttp.Request){ - r.Response.Writeln(r.Get("obj")) + s.BindHandler("/{object}/:attr/{act}.php", func(r *ghttp.Request){ + r.Response.Writeln(r.Get("object")) r.Response.Writeln(r.Get("attr")) r.Response.Writeln(r.Get("act")) }) diff --git a/geg/net/ghttp/server/router/router4.go b/geg/net/ghttp/server/router/router4.go new file mode 100644 index 000000000..121b3bc2a --- /dev/null +++ b/geg/net/ghttp/server/router/router4.go @@ -0,0 +1,24 @@ +package main + +import ( + "gitee.com/johng/gf/g/net/ghttp" + "gitee.com/johng/gf/g" +) + +func main() { + s := g.Server() + // 该路由规则仅会在GET请求下有效 + s.BindHandler("GET:/{table}/list/{page}.html", func(r *ghttp.Request){ + r.Response.WriteJson(r.Router) + }) + // 该路由规则仅会在GET请求及localhost域名下有效 + s.BindHandler("GET:/order/info/{order_id}@localhost", func(r *ghttp.Request){ + r.Response.WriteJson(r.Router) + }) + // 该路由规则仅会在DELETE请求下有效 + s.BindHandler("DELETE:/comment/{id}", func(r *ghttp.Request){ + r.Response.WriteJson(r.Router) + }) + s.SetPort(8199) + s.Run() +} \ No newline at end of file