为了解决跨域下载文件,文件名为中文下载乱码的问题,可以在Tomcat等服务器里设置它的编码格式,Tomcat如下:
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>
添加一个URIEcoding的属性,保证了所有的地方格式都是一致,这样就避免了乱码问题,乱码问题由来已久,最经典的办法就是保证编码的一致,避免了繁琐的编码转换来烦人。
经过我两天来的不断调试,控制台报错:java.lang.IllegalArgumentException: Can not find a java.io.InputStream with the name [downloadFile] in the invocation stack. Check the <param name="inputName"> tag specified for this action.
的原因有这么几个:
1.你要下载的文件不存在。
2.你要下载的文件存在,但你想下载的文件名乱码了,它找不到匹配的文件,就像我就站在你面前,你却不知道我爱你一样悲催。
3.直接路径就有问题。
<Connector URIEncoding="UTF-8" connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" URIEncoding="UTF-8"/>
添加一个URIEcoding的属性,保证了所有的地方格式都是一致,这样就避免了乱码问题,乱码问题由来已久,最经典的办法就是保证编码的一致,避免了繁琐的编码转换来烦人。
经过我两天来的不断调试,控制台报错:java.lang.IllegalArgumentException: Can not find a java.io.InputStream with the name [downloadFile] in the invocation stack. Check the <param name="inputName"> tag specified for this action.
的原因有这么几个:
1.你要下载的文件不存在。
2.你要下载的文件存在,但你想下载的文件名乱码了,它找不到匹配的文件,就像我就站在你面前,你却不知道我爱你一样悲催。
3.直接路径就有问题。