本文主要是介绍Servlet用Cookie实现用户上次登录时间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
问题:遇到异常
An invalid character [32] was present in the Cookie value
原因:
在格式化时间的时候出现了空格,cookie的值里不允许包含空格
// 获取当前时间
long currentTimeMillis = System.currentTimeMillis();
String pattern = "yyyy-MM-dd HH:mm:ss";
SimpleDateFormat simpleDateFormat = new SimpleDateFormat(pattern, Locale.getDefault());
String time = simpleDateFormat.format(currentTimeMillis);
解决办法:
给客户端发送cookie时把时间进行utf-8编码,用的时候解码即可
// 把time进行编码
time = URLEncoder.encode(time, "utf-8");
//把从cookie中拿到的时间解码
value = URLDecoder.decode(value, "utf-8");
这篇关于Servlet用Cookie实现用户上次登录时间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!