HttpSession之URL重写
·························································
session依赖Cookie,让客户端发出请求时归还sessionId,这样才能找到对应的session
但是,当浏览器的访问级别过高,即阻止保存所有的Cookie。所有的Cookie不被网站服务器读取,也不保存任何Cookie。
则服务端读取不到session对象。
·························································
解决方法:
此时,可以使用URL重写带上Cookie。在网址后面加上“?参数”; ==等于== URL重写
【就是把所有的页面中的路径,都使用response.encodeURL("..")处理一下!】
response.encodeURL(String url):智能方法【有cookie,则不加参数;没有cookie,则加上参数】【有则没有,没有则有】
·····:当请求中没有归还sessionid这个cookie,那么该方法会重写url,否则不重写!当然url必须是指向本站的url。
·························································
【理解】
也可以使用URL重写来替代Cookie
1)让网站的所有超链接、表单中都添加一个特殊的请求参数,即sessionId
2)这样服务器可以通过获取请求参数得到sessionId,从而找到session对象。
·························································