为了账号安全,请及时绑定邮箱和手机立即绑定

在servlet中添加cookie报错

在servlet中添加cookie报错

jeck猫 2019-03-01 10:56:25
1.在添加cookie的时候报错: An invalid character [13] was present in the Cookie value 在网上查了一些报错,大部分都是[32]、[44],据说是因为cookie里面添加了“,”或者空格导致的。 登陆处理的代码是这样的: //登录处理 @RequestMapping(value = "/login/validate", method = RequestMethod.POST) public void Validate(@RequestParam("username") String username, @RequestParam("password") String password, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { String md5 = MD5Util.stringToMD5(password); if (userService.verification(username, md5)) { User user = userService.selectByUsername(username); Long id = user.getId(); Long createDate = new Date().getTime(); String str = id + "=" + createDate; //加密 byte[] result = DESUtil.desCrypto(str, "12345678"); //把加密的字节数组转换成16进制 // String results = TypeUtil.bytesToHexString(result); String results = Base64.encodeBase64String(result); Cookie cookie = new Cookie("token", results); cookie.setMaxAge(60 * 60 * 24 * 7);//7天 cookie.setPath("/"); System.out.println("新生成cookie和其MaxAge:" + cookie.getName() + "-->" + cookie.getMaxAge()); httpServletResponse.addCookie(cookie); HttpSession session = httpServletRequest.getSession(); session.setAttribute("user", user); for (Cookie c : httpServletRequest.getCookies()) { System.out.println("cookes添加到response后重新获取cookies和其MaxAge:" + c.getName() + "-->" + c.getMaxAge()); } try { httpServletResponse.sendRedirect("/index.html"); // httpServletRequest.getRequestDispatcher("/index.html").forward(httpServletRequest, httpServletResponse); } catch (Exception e) { e.printStackTrace(); } } else { try { httpServletResponse.sendRedirect("no.html"); } catch (IOException e) { e.printStackTrace(); } } } 报错的地方发生在addCookie这里。
查看完整描述

1 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

经过尝试,把原来的代码2注释,1 放开就可以了,哪位大佬可以解释一下啊

1. String results = TypeUtil.bytesToHexString(result);
2. //String results = Base64.encodeBase64String(result);
查看完整回答
反对 回复 2019-03-01
  • 1 回答
  • 0 关注
  • 696 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号