go gin 绑定静态文件 报错

2021 年 3 月 12 日
 hujun528
func main(){

r := gin.Default()
r.POST("/api/CreateStrategy", createstrategy)
r.GET("/api/FreightSpaceStrategy", getFreightSpaceStrategyData)

//绑定静态文件夹
r.Static("/", "./dist")

}


报错内容
panic: wildcard segment '*filepath' conflicts with existing children in path '/*filepath'
1756 次点击
所在节点    问与答
5 条回复
dreamans
2021 年 3 月 12 日
panic 的提示已经很明显了,假设你访问 /api/CreateStrategy 时程序无法判断你是访问./dist/api/CreateStrategy 这个文件路径还是 `createstrategy ` 这个 handler
hujun528
2021 年 3 月 12 日
@dreamans 这个框架限制太死, “/" 作为整 个网站的静态目录 是很常见的 ,在 node.js 中,会优先去匹配 看是否有对应的静态文件,没有再去匹配 看是否有 绑定 对应的路由,在 gin 中 这样做竟然报错
togou
2021 年 3 月 12 日
gin 这一点确实很恶心 路由搞个优先路由就行了 为了速度不值得
maypu
2021 年 3 月 27 日
遇到了同样的问题
hujun528
2021 年 3 月 28 日
@maypu 我解决了,new 一个新路由,绑定静态资源就不会冲突

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/760861

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX