Pythontornado编码异常
Python tornado encoding exception
我通过@tornado.web.stream_request_body 装饰器接收文件并保存。
但是如果我尝试下载一个文件,我会收到异常:
'latin-1' codec can't encode characters in position 42-47: ordinal not in range(256)
排队
self.flush()
龙卷风处理程序。
我看到数据包含部分作为 \x00word/_rels/document.xml.relsPK\x01\x02-\
(b"some data [this part]")
也许这就是发生错误的原因?如何解决?
我解决了问题。 Content-Disposition header:
中文件的 urlencode 名称
self.set_header('Content-Disposition',
'attachment; filename=' + urllib.parse.quote(file_name, safe=""))
我通过@tornado.web.stream_request_body 装饰器接收文件并保存。 但是如果我尝试下载一个文件,我会收到异常:
'latin-1' codec can't encode characters in position 42-47: ordinal not in range(256)
排队
self.flush()
龙卷风处理程序。
我看到数据包含部分作为 \x00word/_rels/document.xml.relsPK\x01\x02-\
(b"some data [this part]")
也许这就是发生错误的原因?如何解决?
我解决了问题。 Content-Disposition header:
中文件的 urlencode 名称self.set_header('Content-Disposition',
'attachment; filename=' + urllib.parse.quote(file_name, safe=""))