servlet如何清除localStorage?我尝试以下代码,但它不清除localStorage数据。当用户注销帐户时,它将直接指向logout.java servlet,销毁会话对象并清除localStorage:
/ ... /
request.logout();
request.getSession().invalidate();
request.getSession().removeAttribute("student");
response.setHeader("Cache-Control", "no-cache, no-store, must-revalidate"); // HTTP 1.1.
response.setHeader("Pragma", "no-cache"); // HTTP 1.0.
response.setDateHeader("Expires", 0); // Proxies.
out.println("<script type=\"text/javascript\">");
out.println("localStorage.clear();");
out.println("</script>");
response.sendRedirect("index.html");
/..../
有错误吗?
答案 0 :(得分:1)
您正在调用response.sendRedirect()
,它向浏览器发送HTTP 302响应代码和Location
HTTP标头。您的浏览器几乎肯定会忽略写入响应的任何消息体,因此您的脚本将不会被执行。
答案 1 :(得分:0)
您要关闭的代码部分标记
out.println("</javascript>");
是问题吗?
您已将<script>
打开,以便将其关闭</script>
。