An invalid character [32] was present in the Cookie value 错误

- 日理万妓 2023-10-11 11:21 162阅读 0赞

An invalid character [32] was present in the Cookie value 错误

LexBBQ 2018-04-09 原文

今天在做cookie部分的demo的时候出现了一个错误Servlet部分的代码如下

  1. 1 Date data=new Date();
  2. 2 SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
  3. 3 String Last = format.format(data);
  4. 4 // System.out.println(Last);
  5. 5
  6. 6 Cookie cookie =new Cookie("Lastname",Last);
  7. 7 cookie.setMaxAge(60*10*500);
  8. 8 response.addCookie(cookie);
  9. 9 //获得用户携带的cookie
  10. 10 String last=null;
  11. 11 Cookie[] cookies = request.getCookies();
  12. 12 if(cookies!=null){
  13. 13 for(Cookie coo:cookies){
  14. 14 if("Lastname".equals(coo.getName())){
  15. 15 last = coo.getValue();
  16. 16
  17. 17 }
  18. 18 }
  19. 19 }
  20. 20
  21. 21 response.setContentType("text/html;charset=utf-8");
  22. 22 if(last==null){
  23. 23
  24. 24 response.getWriter().write("您是第一次访问");
  25. 25 }else{
  26. 26 response.getWriter().write("你上次访问的时间为"+last);
  27. 27 }

再访问该Servlet的时候页面就为500,并报异常An invalid character [32] was present in the Cookie value,

L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMzcwMjM0LzIwMTgwNC8xMzcwMjM0LTIwMTgwNDA5MjMxMzQ3NDIxLTkxODMyNTE5OC5wbmc_.jpg

后来发现32对应的编码是空格,后来发现

  1. SimpleDateFormat format=newSimpleDateFormat(“yyyy-MM-dd hh:mm:ss”);代码中产生了空格,后改为

  2. SimpleDateFormat format=newSimpleDateFormat(“yyyy-MM-dd-hh:mm:ss”);就可正常访问了
    L3Byb3h5L2h0dHBzL2ltYWdlczIwMTguY25ibG9ncy5jb20vYmxvZy8xMzcwMjM0LzIwMTgwNC8xMzcwMjM0LTIwMTgwNDA5MjMxNDEzNzQyLTk4OTY5MzkxMS5wbmc_.jpg

转载于:https://www.cnblogs.com/studyMoreRich/articles/exception-AnInvalidCharacter.html

发表评论

表情:
评论列表 (有 0 条评论,162人围观)

还没有评论,来说两句吧...

相关阅读