利用URL重写实现Session跟踪

  • Servlet规范中引入了一种补充的会话管理机制,它允许不支持Cookie的浏览器也可以与WEB服务器保持连续的会话。这种补充机制要求在响应消息的实体内容中必须包含下一次请求的超链接,并将会话标识号作为超链接的URL地址的一个特殊参数。
  • 将会话标识号以参数形式附加在超链接的URL地址后面的技术称为URL重写。如果在浏览器不支持Cookie或者关闭了Cookie功能的情况下,WEB服务器还要能够与浏览器实现有状态的会话,就必须对所有可能被客户端访问的请求路径(包括超链接、form表单的action属性设置和重定向的URL)进行URL重写。
  • HttpServletResponse接口中定义了两个用于完成URL重写方法:

encodeURL方法
encodeRedirectURL方法

<form action="<%=response.encodeURL("hello.jsp")%>" method="post">
    UserName:<input type="text" name="username" value="<%=username%>"/>
    <input type="submit" value="登录"/>
</form>

原文地址:https://www.cnblogs.com/realshijing/p/7878835.html