Servlet实现禁用cookie重写URL获取session

前言

    一个女人让他的程序员丈夫去商店买东西:你去附近的商店买些鸡蛋,如果有香蕉的话,买8个回来,这个丈夫买了8个鸡蛋回来,他的妻子大吃一惊:你为什么买了8个鸡蛋?! 程序员丈夫回答:因为他们有香蕉。

内容

    我们知道在session写入的时候,在服务端会为session开辟一块内存,用于存放session内容。然后response一个sessionID出来,客户端向服务端发送sessionID的时候有两种方式,存放在cookie里面或者进行rewriten URL。那么如果我们把浏览器禁掉cookie,就不能通过通过获取cookie里面的sessionID来达到获取session内容这种方式了。下面通过这个demo来说明是怎样通过URL重写实现访问服务端session的。

Demo

	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

		HttpSession session = request.getSession(true);
		response.getWriter().println("<a href='"+ response.encodeURL(request.getRequestURI().toString()) + "'>UrlRewrite</a>");
  }

小结

    这个没有成功实现,但也是一种方法,在IE里面禁用了cookie,真是不知道为什么还是能够访问到,可能试了若干次不知为什么。


感谢您的宝贵时间···

posted @ 2017-01-21 20:57  小小小同  阅读(833)  评论(0编辑  收藏  举报