firfox中"content-disposition", "attachment;filename=“+filename不能显示文件名字

摘要:
通常,文件名必须显示在浏览器中。您可以使用以下文件名//设置文件名的编码方法,以便可以正常安全地显示文件名。filename=URLEncoder。编码;//告诉浏览器这是下载文件响应。setHeader;回答setHeader;在Firefox中,上述代码无法正常显示文件名。

一般要在浏览器中显示文件名,可以使用以下文件名

// 设置文件名的编码方式,使得文件的名字能够正常安全的显示。
filename = URLEncoder.encode(filename, "UTF-8");

// 告诉浏览器这是下载文件
response.setHeader("content-disposition", "attachment;filename="+ filename);
response.setHeader("content-type", "image/jpeg");

当在火狐浏览器中,以上代码不能正常显示文件名。

// 设置文件名的编码方式,使得文件的名字能够正常安全的显示。
filename = URLEncoder.encode(filename, "UTF-8");

// 告诉浏览器这是下载文件
response.setHeader("content-disposition", "attachment;filename*=UTF-8''"+ filename);
response.setHeader("content-type", "image/jpeg");

原因的参考这篇文章:正确处理浏览器在下载文件时HTTP头的编码问题(Content-Disposition)作者:iefans 

免责声明:文章转载自《firfox中"content-disposition", "attachment;filename=“+filename不能显示文件名字》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇深度优先生成树及其应用ASP.NET Core扩展库之实体映射下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

吐槽下若依(RuoYi)系统的权限系统(shiro和spring-security)

spring-security以RuoYi-Vue为例,当前版本是3.1.0。然后是系统中很多地方用LoginUserloginUser=tokenService.getLoginUser来获取当前用户数据,这个需要再解析token,然后从redis缓存中读取的数据,不明白为什么不直接从SecurityUtils.getLoginUser()中获取,明明已经...

JS事件 文本框内容改变事件(onchange)通过改变文本框的内容来触发onchange事件,同时执行被调用的程序。

以下代码显示,当用户更改文本框中的文本时,会弹出一个对话框“您更改了文本内容!”。运行结果:该任务补充了右侧编辑器的第13行。当文本框的内容发生更改时,将调用message()函数,并弹出对话框“您更改了文本内容!”。DOCTYPEHTML˃文本框内容更改事件functionmessage(){alert(“您更改了文本内容!”);}个人简介:请编写您的个人...

解决cookie跨域访问

如果用户在登录(记录用户上下文信息)后在浏览器客户端上写入cookie,则只能访问与创建cookie的页面相同目录或创建cookie页面的子目录中的网页。这是因为cookie可以由其路径下的页面访问。然后,如果您想在域a中生成一个可以被域a和域B访问的cookie,则需要将cookie的域设置为.test.com;...

CentOS7 初始化配置

允许新TCP连接net.ipv4.TCP _ tw_ reuse=1net.ipv4.TCP _ mem=945000009150000009270000000net.ipv4 TCP _ fin_ Timeout=1#启用keepalive时,TCP发送keepalive消息的频率。默认值为2小时net.ipv4.tcp _keepalive_Time=3...

C#探秘系列(十)WPF:打开文件选择器选择文件并保存

//此为点击按钮的监听事件,点击按钮弹出文件选择器privatevoidimageButton_Click(objectsender,RoutedEventArgse){vardialog=newOpenFileDialog();dialog.Filter=".jpg|*.jpg|.png|*.png|.jpeg|*.jpeg";if(dialog.Show...

Linux系统添加永久静态路由的方法

按照Linux启动的顺序,rc本地的内容在Linux中的所有服务启动后执行。也就是说,local的内容在netfs之后执行。也就是说,当netfs启动时,不会添加服务器上的静态路由,因此无法成功装载netfs。...