当前位置:首页 > 开发 > Web前端 > 前端 > 正文

使用Cookie时报错:Control character in cookie value, consider BASE64 encoding your val

发表于: 2015-04-20   作者:wjiaoling136   来源:转载   浏览:
摘要: 使用Cookie存信息时,要是有中文,添加到response中时就会报错: Control character in cookie value, consider BASE64 encoding your value。具体什么意思就不管了(反正是中文乱码导致的),只说它的解决办法。   1、在拼接Cookie的value值时,使用“java.net.URLEncoder.decod

使用Cookie存信息时,要是有中文,添加到response中时就会报错:

Control character in cookie value, consider BASE64 encoding your value
具体什么意思就不管了(反正是中文乱码导致的),只说它的解决办法。

 

1、在拼接Cookie的value值时,使用“java.net.URLEncoder.decode()”方法将其转码:

 

cookieValue = URLDecoder.decode(cookieValue,"UTF-8");
 
2、在Java代码里取值时,先用“java.net.URLDecoder.decode()”方法再编码:
cookieValue = URLDecoder.decode(cookieValue,"UTF-8");
 这样子就能得到正常的数据了。
 
3、页面上使用JS获取Cookie中的值,通过用unescape方法,但是不知道为什么,我用这个方法时,中文得到的还是乱码。改成下面这样子就能正常获取了:
var cookieValue = decodeURI(cookieValue);//对 encodeURI() 函数编码过的 URI 进行解码。
cookieValue = unescape(cookieValue);//对通过 escape() 编码的字符串进行解码
 

使用Cookie时报错:Control character in cookie value, consider BASE64 encoding your val

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
上一篇博文中,讲到用cookie实现简单的购物车,但是有的用户,会因为不小心把cookie给禁止了,如果
有另一种方法可以跟踪用户而不使用cookies或Javascript。这种方法 已经被用于无数网站,但几乎没人
有另一种方法可以跟踪用户而不使用cookies或Javascript。这种方法 已经被用于无数网站,但几乎没人
有另一种方法可以跟踪用户而不使用cookies或Javascript。这种方法 已经被用于无数网站,但几乎没人
有另一种方法可以跟踪用户而不使用cookies或Javascript。这种方法 已经被用于无数网站,但几乎没人
有另一种方法可以跟踪用户而不使用cookies或Javascript。这种方法 已经被用于无数网站,但几乎没人
有另一种方法可以跟踪用户而不使用cookies或Javascript。这种方法 已经被用于无数网站,但几乎没人
8 Cookie
有时候为了减少服务器的频繁访问,使用cookie是有必要的,这样只要用户访问一次,就可以把访问的历史
9 Cookie
cookie的过程: 1、服务器向客户端发送cookie 2、浏览器将cookie保存 3、之后每次请求浏览器都会将c
10 cookie
什么是Cookies? Cookies是一些小文件,它们被创建在客户端的系统里,或者被创建在客户端浏览器的内
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号