登录
首页 >  Golang >  Go问答

Golang Gorilla 为“//” URL 发送 301

来源:stackoverflow

时间:2024-04-15 10:18:33 112浏览 收藏

golang学习网今天将给大家带来《Golang Gorilla 为“//” URL 发送 301》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习Golang或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!

问题内容

我有两条路由配置如下

  • GET /api/store/{store_id}/books
  • GET /api/store/{store_id}

当对第一个没有 {store_id} 参数的 URL 进行 API 调用时,例如 /api/store//books,Gorilla 会以某种方式向客户端发送 301 /api/store/books 。这给我带来了问题,因为它实际上与第二条路线匹配。 Gorilla 会将 books 视为 {store_id} 参数。

如何配置 Gorilla 在收到 URL 中的 // 时返回 404 或其他错误代码?

我使用的是 Gorilla v1.7.0。


解决方案


默认情况下,mux 会清理 URL。您可以设置 router.SkipClean(true) 参数来避免这种情况。

当 true 时,如果路由路径是“/path//to”,它将保留双斜杠。如果您有类似以下的路线,这会很有帮助:/fetch/http://xkcd.com/534/

以上就是《Golang Gorilla 为“//” URL 发送 301》的详细内容,更多关于的资料请关注golang学习网公众号!

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