【Cookie】java.lang.IllegalArgumentException An invalid character [32] was present in the Cookie value

创建时间:6.30

java.lang.IllegalArgumentException: An invalid character [32] was present in the Cookie value
 

 

The reason given:

Tomcat 8.5 release, the cookie can not use spaces in the value.

 

 

 

Code:

 

 1 protected void doGet(HttpServletRequest request, HttpServletResponse response)
 2             throws ServletException, IOException {
 3         
 4         Date date = new Date();
 5         SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
 6         String currentTime = format.format(date);
 7          
 8         Cookie accessTime = new Cookie("lastAccessTime",currentTime);
 9         accessTime.setMaxAge(60*50);
10         response.addCookie(accessTime);
11 
12         String lastAccessTime=null;
13         Cookie[] cookies = request.getCookies();
14         if (cookies != null) {
15             for(Cookie cookie:cookies) {
16                 if(cookie.getName().equals("laseAccessTime")) {
17                     lastAccessTime=cookie.getValue();
18                 }
19             }
20         }
21         
22         if(lastAccessTime==null) {
23             the response.setContentType ( "text / HTML; charset = UTF-. 8" );
 24              response.getWriter () Write ( "first visit you." );
 25              System.out.println (lastAccessTime);
 26 is          }
 27          the else {
 28              . response.getWriter () the Write ( "time of your last visit is:" + lastAccessTime);
 29          }
 30          
31      }

 

 

The problem here: the date format spaces, replace / can

 

Guess you like

Origin www.cnblogs.com/musecho/p/11237165.html