如果不确定客户端是否禁用cookie ,则可以使用URL重写技术。
浏览器会话(session)跟踪的实现方式主要是cookie与url重写,cookie是默认的方式,当不确定客户端是否禁用cookie的时候,可以用URL重写技术实现会话跟踪。
- 那么什么是URL重写?
URL重写是指服务器程序对接收的URL请求重新写成网站可以处理另一个URL的过程。
- 什么是URL重写技术?
URL重写技术是实现动态网站会话跟踪的重要保障。使用URL重写技术可以对请求的URL地址追加会话标识,从而实现用户的会话跟踪功能。
URL重写实现会话跟踪,要保证每个页面都必须使用Servlet或JSP动态页面。
- URL重写技术的实现
可以通过HttpServletResponse的encodeURL()方法和encodeRedirectURL()方法实现URL重写,其中,encodeRedirectURL()方法主要对使用sendRedirect()方法的URL进行重写。
URL重写方法根据请求信息中是否包含Set-Cookie请求头来决定是否进行URL重技术的写。若包含了该请求头,将URL原样输出:若不包含,则将会话标识JSEESIONID重写到URL中。URL重写示例代码如下:
//对重定向的URL进行重写
String encodeURL = response.encodeRedirectURL(“toRedirectServlet”);
response.sendRedirect(“encodeURL”);