zoukankan      html  css  js  c++  java
  • An invalid character [32] was present in the Cookie value

    HTTP Status 500 – Internal Server Error


    Type Exception Report

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

    Description The server encountered an unexpected condition that prevented it from fulfilling the request.

    Exception

    java.lang.IllegalArgumentException: An invalid character [32] was present in the Cookie value
    	org.apache.tomcat.util.http.Rfc6265CookieProcessor.validateCookieValue(Rfc6265CookieProcessor.java:182)
    	org.apache.tomcat.util.http.Rfc6265CookieProcessor.generateHeader(Rfc6265CookieProcessor.java:115)
    	org.apache.catalina.connector.Response.generateCookieString(Response.java:1019)
    	org.apache.catalina.connector.Response.addCookie(Response.java:967)
    	org.apache.catalina.connector.ResponseFacade.addCookie(ResponseFacade.java:386)
    	com.itheima.lastaccesstime.LastAccessTimeServlet.doGet(LastAccessTimeServlet.java:43)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:635)
    	javax.servlet.http.HttpServlet.service(HttpServlet.java:742)
    	org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
    

    Note The full stack trace of the root cause is available in the server logs.


    Apache Tomcat/8.5.16

    	protected void doGet(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    		// 获得当前时间
    		Date date = new Date();
    		SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-ddhh:mm:ss");// 中间不能有空格
    		String currentTime = format.format(date);
    
    		// 1.创建Cookie记录当前的最新访问时间
    		Cookie cookie = new Cookie("lastAccessTime", currentTime);
    		cookie.setMaxAge(60 * 10 * 500);
    		response.addCookie(cookie);
    
    		// 2.获得客户端携带的cookie--lastAccessTime
    		String lastAccessTime = null;
    		Cookie[] cookies = request.getCookies();
    		if (cookies != null) {
    			for (Cookie coo : cookies) {
    				if ("lastAccessTime".equals(coo.getName())) {
    					lastAccessTime = cookie.getValue();
    				}
    			}
    		}
    
    		response.setContentType("text/html;charset=UTF-8");
    		if (lastAccessTime == null) {
    			response.getWriter().write("你是第一次访问");
    		} else {
    			response.getWriter().write("你上次的访问访问是:" + lastAccessTime);
    		}
    	}
    

    解决办法:

    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-ddhh:mm:ss");// 中间不能有空格
    
  • 相关阅读:
    UVA
    Codeforces 898F 字符串hash
    牛客练习赛11 B trie树+拓扑判环 E 分治求平面最近点对
    Codeforces Round #459 (Div. 2) C 思维,贪心 D 记忆化dp
    2017-2018 ACM-ICPC Nordic Collegiate Programming Contest (NCPC 2017) D bfs思维 E bfs I Floyd找最小环 K 二分
    Educational Codeforces Round 37 E 补图求连通块 bfs+链表优化 F 线段树套路
    Codeforces 919E 数论,思维
    大数加法(主要是想记住模板)
    基础图论3
    简单并查集2hdu1213
  • 原文地址:https://www.cnblogs.com/denggelin/p/7239158.html
Copyright © 2011-2022 走看看