使用Java和JS访问cookies

在web开发中, 一些不重要的临时数据保存在客户端,既方便又能节省服务器资源。

java访问cookie:

public class CookieUtil {
	//获取cookie
	public static String get(HttpServletRequest request, String key) {
		if (key == null || key.isEmpty()) {
			return null;
		}
		Cookie[] cookies = request.getCookies();
		if (cookies != null) {
			for (int i = 0; i < cookies.length; i++) {
				Cookie ck = cookies[i];
				if (ck.getName() != null && ck.getName().equals(key)) {
					return ck.getValue();
				}
			}
		}
		return null;
	}

	//设置cookie
	public static void set(HttpServletResponse response, String key, String value) {
		if (key != null && key.isEmpty() == false && value != null && value.isEmpty() == false) {
			Cookie ck = new Cookie(key, value);
			ck.setPath("/");
			response.addCookie(ck);
		}
	}

	//删除cookie
	public static void remove(HttpServletResponse response, String key) {
		Cookie ck = new Cookie(key, null);
		ck.setPath("/");
		ck.setMaxAge(0);
		response.addCookie(ck);
	}

}



js设置cookie:

        function setCookie(c_name,value,expiredays)
        {
            var exdate=new Date();
            exdate.setDate(exdate.getDate()+expiredays);
            document.cookie=c_name+ "=" +escape(value)+((expiredays==null) ? "" : ";expires="+exdate.toGMTString())+";path=/";
        }



特别注意:
在cookie中,需要注意的是path这一项。表示一个cookie键值的生效路径。如下:
值为"/"表示全局有效。值为/a和/b分别表示不同的生效路径。


原文地址:https://www.cnblogs.com/jrmy/p/14316311.html