[HTTP] 文件下载-中文名的处理

在利用 python HTTP 下载文件的时候(如 Django),遇到文件名是中文的时候会遇到一些问题,比如乱码等,在这里记录一下解决版本,和使用的编程语言没有关系,关键是要把 Content-Disposition 给设置一下。需要将中文名进行 url编码,在 python 中可以利用 urllib.parsequote函数

from urllib.parse import quote
file_name = quote(file_name)
response["Content-Disposition"] = f"attachment;filename*=utf-8''{file_name}"

或者在 go 中可以利用 url 库的 QueryEscape 来将名字进行编码

name = url.QueryEscape(name)
c.Response.Header.Set("Content-disposition", fmt.Sprintf("attachment;filename*=utf-8''%s", name))

作者:芒果和小猫

出处:https://www.cnblogs.com/WAoyu/p/16350309.html

版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。

posted @   芒果和小猫  阅读(346)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
点击右上角即可分享
微信分享提示
more_horiz
keyboard_arrow_up light_mode palette
选择主题