HTTP响应头Content-Disposition
Content-Disposition
用于表示已什么方式展示文件,其中attachment
是已附件的方式保存到文件夹当中,可以通过filename
去指定附件的名称。
但是filename
仅支持ASSCII
标准中的字符集,如果附件名是中文的话需要使用filename*
并同时指定文件的编码:
filename*=UTF-8''
同时,如果设置Content-Disposition
,还应该设置Content-Type
对应的类型。
对于编码如果 JDK
提供的 UrlEncode 是有问题的,因为它会把空格转换为+:
,推荐使用org.yaml.snakeyaml.util.UriEncoder
参考
how-to-encode-the-filename-parameter-of-content-disposition-header-in-http
[下载的附件名总乱码?你该去读一下 RFC 文档了!](https://segmentfault.com/a/1190000023601065)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理