WTF没有提供任何File相关的validator,Flask-WTF提供了FileAllow和FileRequire。
问下大家如何对上传文件的大小做验证?
Nginx可以配置client_max_body_size的最大HTTP body的限制,超出限制则报413 Request Entity Too Large错误,可以在Flask中写一个413错误页面。
那么如何做小于20M的文件(比如5M)限制检验?
Werkzeug的FileStorage中有个content_length属性,不过文档中有个说明:Usually not available,不太懂...为什么会出现not available的情况...:
http://werkzeug.pocoo.org/docs/datastructures/#werkzeug.datastructures.FileStorage目前只想到去读取request中的Content-Length的长度,如果减去1M(除文件之外的其他部分的大小,这里只是预估一下)仍然大于5M的话,就判定是超出5M的。
各位大哥给点建议?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
https://www.v2ex.com/t/91548
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.