登录
首页 >  Golang >  Go问答

如何在 Go 中将 http.HandleFunc 映射到以 "/" 结尾的模式的相同函数

来源:stackoverflow

时间:2024-02-21 09:36:23 167浏览 收藏

来到golang学习网的大家,相信都是编程学习爱好者,希望在这里学习Golang相关编程知识。下面本篇文章就来带大家聊聊《如何在 Go 中将 http.HandleFunc 映射到以 "/" 结尾的模式的相同函数》,介绍一下,希望对大家的知识积累有所帮助,助力实战开发!

问题内容

我正在使用 golang net/http 函数 http.handlefunc 将 url 模式与函数关联。

我想知道是否还有比这样做更好的事情

http.HandleFunc("/foo", fooFunc)
http.HandleFunc("/foo/", fooFunc)
http.HandleFunc("/bar", barFunc)
http.HandleFunc("/bar/", barFunc)

将 foofunc 与 "/foo""/foo/" 端点相匹配,对于 bar 也是如此。

作为奖励,我如何将 foo 函数限制为仅用于 get 请求。

(谢谢!)


解决方案


更好的解决方案:只需注册一个带有尾部斜杠的路径,然后您就可以“免费”获得另一个路径。

引用自http.ServeMux

如果子树已注册,并且收到命名子树根但不带尾部斜杠的请求,则 ServeMux 会将该请求重定向到子树根(添加尾部斜杠)。

以上就是《如何在 Go 中将 http.HandleFunc 映射到以 "/" 结尾的模式的相同函数》的详细内容,更多关于的资料请关注golang学习网公众号!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>