Go Gorilla Mux“匹配任何东西”路径模板

时间:2017-04-14 18:31:50

标签: go gorilla

创建简单的“匹配任何”处理程序的正确语法是什么?

mux.NewRouter().StrictSlash(true).Path("/")....

以上代码似乎严格匹配/,而/foo将无法匹配

2 个答案:

答案 0 :(得分:6)

这应该有效:

router := mux.NewRouter().PathPrefix("/")

答案 1 :(得分:2)

您可以将mux.Route.HandlerFuncmux.Router.PathPrefix一起使用:

r := mux.NewRouter()

// route catalog to catalogHandler:
r.HandleFunc("/catalog/{id}", catalogHandler) 

// route everything else to defaultHandler:
r.PathPrefix("/").HandlerFunc(defaultHandler)

请注意名称的区别(HandlerFuncHandleFunc)。