mux go 路由 mux

xnotepad • 3441 次点击    
这是一个分享于 的项目,其中的信息可能已经有所发展或是发生改变。
mux 是一个实现了 http.Handler 的中间件,为用户提供了以下功能: 1. 正则路由; 1. 路由参数; 1. 丰富的 OPTIONS 请求处理方式; 1. 根据路由生成地址。 ```go m := mux.New(false, false, nil, nil). Get("/users/1", h). // GET /user/1 Post("/login", h). // POST /api/login Get("/posts/{id:\\d+}", h). // GET /blog/post/{id:\d+} 正则路由 Options("/users/1", "GET") // OPTIONS /user/1 手动指定该路由项的 OPTIONS 请求方法返回内容 // 统一前缀路径的路由 p := m.Prefix("/api") p.Get("/logout", h) // 相当于 m.Get("/api/logout", h) p.Post("/login", h) // 相当于 m.Get("/api/login", h) // 对同一资源的不同操作 res := p.Resource("/users/{id\\d+}") res.Get(h) // 相当于 m.Get("/api/users/{id}", h) res.Post(h) // 相当于 m.Post("/api/users/{id}", h) res.URL(map[string]string{"id": "5"}, "") // 构建一条基于此路由项的路径:/users/5 http.ListenAndServe(":8080", m) ```
授权协议:
MIT
开发语言:
go 查看源码»
3441 次点击  
加入收藏 微博
1 回复  |  直到
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传