Golang echo 框架的一个 BUG

2017 年 6 月 18 日
 nazor

不知道有没有人反馈过,至少在发帖的时候还没修复。 BUG 很简单,自带的静态文件访问服务不支持含有汉字的文件。 有条件的可以试一试。

e := echo.New()
e.Static("/","static")
2159 次点击
所在节点    Go 编程语言
11 条回复
102400
2017 年 6 月 18 日
静态不是应该用 Nginx 之类的解决吗,框架管理应用逻辑就好
eric6356
2017 年 6 月 18 日
似乎没什么问题呢
zonyitoo
2017 年 6 月 18 日
编码问题吧
Reficul
2017 年 6 月 18 日
会不会是 Linux 没安装相应的编码页
wayslog
2017 年 6 月 18 日
@zonyitoo 港锅问题!
nazor
2017 年 6 月 19 日
@eric6356 我在 win7 和 cenos6.5 下是无法访问,在 macOS 下是正常的,感觉这个问题有点玄学。
scnace
2017 年 6 月 19 日
win 的字符编码问题吧…这个问题跟有些 Win 的文件名在 Linux 上会是乱码一样 在 win 下用命令行创建文件试试 echo 说这个锅不背
myself659
2017 年 6 月 19 日
表示关注一下,最近在用 echo
nazor
2017 年 7 月 4 日
我大概知道是什么问题了,echo 框架的静态资源服务解析 url 的时候没有处理中文字符,简单讲就是没有 urldecode 这个操作,所以才会出现只要包含中文或者任何会被浏览器自动 urlencode 的字符都会无法访问。
这里有个解决办法,就是自己写个函数来处理,将请求的 url decode 以后再用 c.Files ……说的有点乱,不过聪明的同学应该看懂了。
cchange
2017 年 7 月 4 日
@eric6356 请问这个是什么 ide 啊…… 新手勿喷
eric6356
2017 年 7 月 4 日

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

https://www.v2ex.com/t/369347

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

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

© 2021 V2EX