如何解决具有相似路径的Gorilla MUX路由
我在golang api中使用Gorilla mux进行路由。我有两个相似的路径:/users/{id}
和/users/settings
。当我呼叫/ users / settings端点时,它被路由到端点/users/{id}
。我该如何解决?
router := mux.NewRouter()
router.HandleFunc("/users/{id}",usersController.GetUserDetail).Methods(http.MethodGet)
router.HandleFunc("/users/settings",usersController.GetSettings).Methods(http.MethodGet)
解决方法
将正则表达式用于ID /{id:[0-9]+}
之类的路由,它将匹配数字。
使用解决方案Gorilla MUX routing with similar paths。我已切换顺序,现在我要先注册设置。
router.HandleFunc("/users/settings",usersController.GetSettings).Methods(http.MethodGet)
router.HandleFunc("/users/{id}",usersController.GetUserDetail).Methods(http.MethodGet)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。