Http Grails编码可下载文件

Http Grails编码可下载文件,http,grails,Http,Grails,我想对可下载的文件名进行编码。我想用波兰字母设置文件名,比如ąęć໠ź。这是我的代码: response.setHeader("Content-disposition", "attachment; filename=" + URLEncoder.encode("ŻżŹźĄą", 'UTF-8')) 它可以在Chrome上运行,但MozillaFirefox显示不正确 如何正确设置编码?它不起作用。HTTP标头隐式要求ASCII编码,但要求最高级的拉丁1编码。在UTF-8中没有编码名称的标准。如

我想对可下载的文件名进行编码。我想用波兰字母设置文件名,比如ąęć໠ź。这是我的代码:

response.setHeader("Content-disposition", "attachment; filename=" + URLEncoder.encode("ŻżŹźĄą", 'UTF-8'))
它可以在Chrome上运行,但MozillaFirefox显示不正确


如何正确设置编码?

它不起作用。HTTP标头隐式要求ASCII编码,但要求最高级的拉丁1编码。在UTF-8中没有编码名称的标准。如果你把这些字母分解,尤鲁会过得更好。看到这个:

这是因为Chrome和IE是有缺陷的。“%”在内容配置参数中并不特殊,除非您使用RFC 5987中定义的编码。

Chrome和IE9处理它,所以奇怪的是为什么Mozilla将文件名更改为这样的%C5%b事实上,UTF-8(RFC 5987)中的参数编码有一个标准。我的第二个链接指向这一点。这仍然没有关系,因为没有浏览器支持这个。Michael-O:所有主要的出货浏览器都支持RFC 5987。Michael-O:嗯,IE9支持。说到蹩脚:苹果直到两周前才修复Safari,而且Windows也没有更新。