FLASK上传时有中文文件名的解决方案
生活随笔
收集整理的這篇文章主要介紹了
FLASK上传时有中文文件名的解决方案
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
2019獨角獸企業重金招聘Python工程師標準>>>
場景是在nginx+uwsgi+flask時上傳文件名為中文時nginx報502錯,設置各各地方為utf8后無果,最后妥協了. 解決方案一:拼接+安全檢查
def rsafename(s):"""Ensure user submited string not contains '/' or muti '-'.Args:s: submited stringReturns:replaced slash string"""s = re.sub('[" "\/\--.]+', '-', s)s = re.sub(r':-', ':', s)s = re.sub(r'^-|-$', '', s)return s解決方案2: 轉成拼音 pip install pypinyin
from pypinyin import pinyin, lazy_pinyinfilesname = "".join(lazy_pinyin(files.filename))轉載于:https://my.oschina.net/u/217662/blog/677276
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的FLASK上传时有中文文件名的解决方案的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu常见问题:could not
- 下一篇: Objective-C语法汇总