golang:github/gorilla/mux支持回归url路径

k2fxgqgv  于 2023-03-21  发布在  Go
关注(0)|答案(1)|浏览(137)

当我想要的url路径工作良好,有尾巴“/",和没有尾巴“/”

mux1      *mux.Router

mux1.Handle("/example/", ...).Methods("GET")

我想这两个网址工程:https://host/api/example/和https://主机/应用程序接口/示例
但是

mux1.Handle("/example/?", ...).Methods("GET")

不是工作。

vwoqyblh

vwoqyblh1#

在Go语言中使用mux.Handle定义路径时,指定的路径是完全匹配的,这意味着/example//example是不同的路径,需要分别为它们定义路径。
实现这一点的一种方法是使用mux.PathPrefix方法匹配所有以/example开头的路径,然后使用mux.StripPrefix从URL中删除/example前缀,然后将其传递给处理程序。

mux := mux.NewRouter()
mux.PathPrefix("/example").Handler(http.StripPrefix("/example", myHandler))

// ...

http.ListenAndServe(":8080", mux)

相关问题