提供带有send_from_directory()错误的混合文件名

时间:2018-09-20 04:38:09

标签: python

以html格式,我有一个用户选择一个文件名,然后我尝试将其发送到他的浏览器。这是代码:

filename = request.form.get('filename')
filepath = '/home/nikos/wsgi/static/files/'

return send_from_directory(filepath, filename)

如果选择的文件名是英文字符,它将被发送给用户,但是,如果它包含英语+希腊字符的混合形式,它将给出bad request,我试图对`filename.encode(“ utf-8 “),但没有文件被提供。

1 个答案:

答案 0 :(得分:0)

filepath = '/home/nikos/wsgi/static/files/'

return send_from_directory( filepath, filename, as_attachment=True )

上面的方法对于英文文件名很有效,但是返回:

Bad Request The browser (or proxy) sent a request that this server could not understand.

当文件名包含混合字母时。 如何使其与每个文件名一起使用?!