cookie中文乱码
在学习当中碰到cookie中文乱码问题,问题原因:cookie对中文不太支持,将中文放入cookie中会报错误。
解决办法:
1.编码
将中文进行编码再放入cookie中:
String username1 = URLEncoder.encode(username, "utf-8");
String userpwd1 = URLEncoder.encode(userpwd, "utf-8");
其中username和userpwd其中有中文,username1和userpwd1是进行编码之后的字符串。
比如:(我这里做的是三天免登陆)
Cookie loginCookie = new Cookie("loginCookie",username1+":"+userpwd1);
//将编码后的内容放到Cookie中
loginCookie.setMaxAge(24*3600);
//设置loginCookie的有效期3天 24小时*60分钟*60秒
resp.addCookie(loginCookie);
//将loginCookie响应到浏览器
2.解码(如果不进行解码,页面会获取的是base64编码后的内容)
String unamePwd = URLDecoder.decode(cookies[i].getValue(),"utf-8");
其中cookies[i].getValue()是要进行解码的内容,根据自己的情况进行修改。
我的代码:
//创建存放用户名密码的map
Map<String,String> loginMap = new HashMap<String,String>();
//获取cookies
Cookie[] cookies = req.getCookies();
//进行判断
if(cookies!=null) {
for(int i=0;i<cookies.length;i++) {
if(cookies[i].getName().equals("loginCookie")) {
String unamePwd = URLDecoder.decode(cookies[i].getValue(),"utf-8");
String[] up = unamePwd.split(":");
loginMap.put(up[0], up[1]);
req.getSession().setAttribute("loginMap",loginMap);
}
}
}
这样问题就解决了。
cookie中文乱码的更多相关文章
- php/js互传cookie中文乱码的问题
问题发现: 过去好好的,今天突然网页出现了问题. 在猎豹和IE都出现问题,在360浏览器就正常. 经过排错,最终发现: js存储cookie,php读取的时候成了乱码 . 问题分析: 这是因为文字编 ...
- [转]JS Cookie 中文乱码
首先是一个解析cookie的函数: <script type="text/javascript"> function getCookie(name) { var c ...
- ASP.NET后台获取cookie中文乱码解决办法
项目中有一功能,需要从一个页面前台使用cookie保存json数据,并传递到第二个页面.要在第二个页面中获取cookie中的json的值,没有任何处理情况下,获取的字符串为乱码,就连符号都是乱码的.百 ...
- Cookie中文乱码问题
页面一登录,页面二保存用户信息,放入Cookies里. 但是Cookies放入中文会引起编码问题,如报错“Control character in cookie value, consider BAS ...
- java读写cookie中文乱码解决方法
1.写入的时候: public boolean addCookie( HttpServletRequest req, HttpServletResponse resp){ //创建 Cookie co ...
- JS读写cookie以及中文乱码解决
本文地址:http://www.cnblogs.com/PiaoMiaoGongZi/p/4092489.html 转载请注明. Js获取所有的cookie信息: var cookiename = d ...
- 【转】asp.net Cookie值中文乱码问题解决方法
来源:脚本之家.百度空间.网易博客 http://www.jb51.net/article/34055.htm http://hi.baidu.com/honfei http://tianminqia ...
- 记录一次关于Cookie、Json中文乱码的解决方法
今天工作上遇到一个问题,需要把一个对象集合List<Model>存入一个Cookie,按照原来都封装方法存入都ok,但是到取值都时候中文会变成乱码. 首先,我们可以确认Json和Cooki ...
- 解决springmvc+mybatis+mysql中文乱码问题【转】
这篇文章主要介绍了解决java中springmvc+mybatis+mysql中文乱码问题的相关资料,需要的朋友可以参考下 近日使用ajax请求springmvc后台查询mysql数据库,页面显示中文 ...
随机推荐
- Linux 进程间通讯详解六
ftok()函数 key_t ftok(const char *pathname, int proj_id); --功能:创建系统建立IPC通讯 (消息队列.信号量和共享内存) 时key值 --参数 ...
- C#进阶系列——DDD领域驱动设计初探(三):仓储Repository(下)
前言:上篇介绍了下仓储的代码架构示例以及简单分析了仓储了使用优势.本章还是继续来完善下仓储的设计.上章说了,仓储的最主要作用的分离领域层和具体的技术架构,使得领域层更加专注领域逻辑.那么涉及到具体的实 ...
- EF6 在 SQLite中使用备忘
== 菜鸟级选手试验在EF6中使用Sqlite,零EF基础,少量Sqlite基础.经过断断续续的很长时间 - _ -! >>连接 1. 安装 使用目前最新版本EF6.1,Sqlite1.0 ...
- HashMap遍历的两种方式
第一种: Map map = new HashMap(); Iterator iter = map.entrySet().iterator(); while (iter.hasNext()) { ...
- SQLite应用之实例代码
目录 一.获取表的Schema信息 二.常规数据插入 三.高效的批量数据插入 四.数据查询 一.获取表的Schema信息 1). 动态创建表. 2). 根据sqlite3提供的API,获取 ...
- 【原】关于使用sklearn进行数据预处理 —— 归一化/标准化/正则化
一.标准化(Z-Score),或者去除均值和方差缩放 公式为:(X-mean)/std 计算时对每个属性/每列分别进行. 将数据按期属性(按列进行)减去其均值,并处以其方差.得到的结果是,对于每个属 ...
- Android开发之Touch事件分发机制
原地址http://www.cnblogs.com/linjzong/p/4191891.html Touch事件分发中只有两个主角:ViewGroup和View.Activity的Touch事件事实 ...
- 【jQuery api】 $.type(obj)
用来获取JavaScript数据类型[[Class]]的对象 <!DOCTYPE html> <html> <head> <script src=" ...
- 由Memcached升级到 Couchbase的 Java 客户端的过程记录(三)
采用之前的源码运行后,我们发现 只有一个配置信息 即servers=127.0.0.1:11211,即 Couchbase Server的服务所在ip 和端口,此时数据直接存在 default 中 根 ...
- _UICreateCGImageFromIOSurface 使用API
上传的时候,苹果发送邮件 Non-public API usage: The app references non-public symbols in DUO-LINK 4: _UICreateCGI ...