Golang 大猩猩为“//”URL 发送 301
Golang Gorilla Sends 301 For "//" URLs
我有两条路由配置如下
GET /api/store/{store_id}/books
GET /api/store/{store_id}
当 API 调用第一个没有 {store_id}
参数的 URL 时,比如 /api/store//books
,Gorilla 会以某种方式向客户端发送 301 /api/store/books
。这引起了我的问题,因为它完全匹配第二条路线。 Gorilla 会将 books
视为 {store_id}
参数。
如何在 URL 秒内接收 //
时将 Gorilla 配置为 return 404 或其他错误代码?
我正在使用 Gorilla v1.7.0。
默认情况下 mux 将清除 URL。您可以设置 router.SkipClean(true)
参数来避免这种情况。
When true, if the route path is "/path//to", it will remain with the double slash. This is helpful if you have a route like: /fetch/http://xkcd.com/534/
我有两条路由配置如下
GET /api/store/{store_id}/books
GET /api/store/{store_id}
当 API 调用第一个没有 {store_id}
参数的 URL 时,比如 /api/store//books
,Gorilla 会以某种方式向客户端发送 301 /api/store/books
。这引起了我的问题,因为它完全匹配第二条路线。 Gorilla 会将 books
视为 {store_id}
参数。
如何在 URL 秒内接收 //
时将 Gorilla 配置为 return 404 或其他错误代码?
我正在使用 Gorilla v1.7.0。
默认情况下 mux 将清除 URL。您可以设置 router.SkipClean(true)
参数来避免这种情况。
When true, if the route path is "/path//to", it will remain with the double slash. This is helpful if you have a route like: /fetch/http://xkcd.com/534/