Cookie不能保存中文解决方式
2014-08-30 10:35
246 查看
在用cookie保存username的时候,发现cookie值不能存中文,报例如以下错:
Control character in cookie value, consider BASE64 encoding your value
发生错误在:response.addCookie(cookie);
在曾经的编程中也碰到过这种问题,主要是cookie值里面存在非法參数,如存在”\r\n”、”\n”之类的字符时就报报这种错,但我就个username啊,不存在像这些字符啊,无论,我把cookie值设为一个默认的中文username,执行看是否出问题,果不其然,出现相同的错误,结果知道,cookie中不能保存中文。
最后想想把中文转换为UTF-8字符串进行保存应该没问题,即用 URLEncoder.encode(“中文username”,”UTF-8″)); 这样把中文username转换为UTF-8字符串,执行时通过。在最后接收这个值的时候,用URLDecoder.decode(cookies.getValue(),”UTF-8″);来解码得到我要的中文username。
URLEncode及URLDecode在包java.net里面。
在用cookie保存username的时候,发现cookie值不能存中文,报例如以下错:
Control character in cookie value, consider BASE64 encoding your value
发生错误在:response.addCookie(cookie);
在曾经的编程中也碰到过这种问题,主要是cookie值里面存在非法參数,如存在”\r\n”、”\n”之类的字符时就报报这种错,但我就个username啊,不存在像这些字符啊,无论,我把cookie值设为一个默认的中文username,执行看是否出问题,果不其然,出现相同的错误,结果知道,cookie中不能保存中文。
最后想想把中文转换为UTF-8字符串进行保存应该没问题,即用 URLEncoder.encode(“中文username”,”UTF-8″)); 这样把中文username转换为UTF-8字符串,执行时通过。在最后接收这个值的时候,用URLDecoder.decode(cookies.getValue(),”UTF-8″);来解码得到我要的中文username。
URLEncode及URLDecode在包java.net里面。
相关文章推荐
- JAVA学习提高之----Propert文件不能保存中文的问题及解决
- 日文操作系统中如何解决eclipse中不能保存中文注释情况
- 关于爬取数据保存到json文件,中文是unicode解决方式
- django解决Cookie不能存入中文字符问题
- 解决cookie 不能存中文的方案
- ADT(Android Developer Tools) GIT功能不全,远程提交的时候账户密码不能保存账户和密码解决方式
- 关于CodeSmith不能保存及输出中文的解决办法
- CodeSmith不能保存中文的解决办法
- 关于解决属性文件中文编码错误不能保存的问题
- Cookie不能保存中文解决方案
- ubuntu 14.04LTS快捷方式打开Sublime Text不能输入中文的解决方法
- 关于CodeSmith不能保存及输出中文的解决办法
- 解决eclipse编辑时文件不能保存中文的问题
- Eclipse中如.js,或.properties文件中有中文不能保存的问题的解决方法
- Cookie的值是不能保存中文的
- 解决Mysql不能保存中文的问题
- 通过serverlet方式下载文件,不能显示中文的解决方法
- 三种方式--JS/JSP/EL 解决在JSP中获取cookie中文乱码的问题
- APP混淆后Cookie不能正确保存的解决办法
- 解决保存Cookie中带有中文会报错问题