前段时间在开发过程中遇到页面出现乱码,debug发现在JS中拿到一个title是中文,然后通过url传递到后台,在后台接受后就成了乱码,通过java.net.URLDecoder.decode("需要转码的变量","转码格式(UTF-8等)")转码后仍然为乱码。可能大神们会觉得这种问题很菜,但我确实不知道为什么。后来在网上看到相关问题的帖子,有大神给出解决办法。
在传递中文参数前,先对其进行编码,encodeURI(encodeURI(param)),当时看到那位大神强调一定要双重的,觉得不可思议。后来试了下还真是这样,单单用一层是没用的。
如果是用tomcat做服务器,还有一种方法可以解决中文参数传递出乱码,就是去conf目录下server.xml里更改 URIEncoding="utf-8" 改为你想要的编码,不过前提是你其它地方不会因为这个改动又出乱码了。
就写这些吧,时不时记录点东西,给日子留下点痕迹~