URL重写 实现会话管理 http状态保持
2014-05-14 21:47
288 查看
URL重写 实现会话管理 http状态保持 (转)
实质上 URL 重写是通过向 URL 连接添加参数,并把 session ID 作为值包含在连接中。然而,为使这生效,你需要为你的servlet 响应部分的每个连接添加 session ID 。
把 session ID 加到一个连接可以使用一对方法来简化:response.encodeURL() 使 URL 包含session ID,如果你需要使用重定向,可以使用 response.encodeRedirectURL () 来对 URL进行编码。
encodeURL () 及 encodeRedirectedURL () 方法首先判断 cookies是否被浏览器支持;如果支持,则参数 URL 被原样返回,session ID 将通过 cookies来维持。
来看下面的例子,两个 JSP 文件:hello1.jsp 和 hello2.jsp,及它们之间的影响。我们在 hello1.jsp中简单的创建一个会话,并在 session 中存储一个对象实例。接着用户可以点击页面的连接到达 hello2.jsp。在hello2.jsp 中,我们从 session 中获取原先放置的对象并显示它的内容。注意,我们在 hello1.jsp 中调用了encodeURL() 方法来获得 hello2.jsp 的链接,使得在浏览器停用 cookies 的情况下,session ID自动添加到
URL,hello2.jsp 仍能得到 session 对象。
首先在启用 cookies 的情况下运行。然后关闭对 cookie的支持,重启浏览器,再运行一次。每次你都可以看到会话管理在起作用,并能在页之间传递信息。
注意,如果你想让这个例子能在关闭了 cookies 的浏览器中工作,你的 JSP 引擎必须支持 URL重写。
相关文章推荐
- shiro实现APP保持登录状态,以及web统一登录认证和权限管理,会话保持在web和APP之间。
- 会话状态保持,JSESSIONID,COOKIE,URL重写
- 模拟http或https请求,实现ssl下的bugzilla登录、新增BUG,保持会话以及处理token
- 基于RFC6265 (HTTP状态管理协议)实现简单的登录系统
- 基于RFC6265 (HTTP状态管理协议)实现简单的登录系统
- 会话状态保持,JSESSIONID,COOKIE,URL重写
- C#采用HttpWebRequest实现保持会话上传文件到HTTP的方法
- Android WebView 与OkhttpClient登录状态保持一致,建立SESSION会话
- java实现自动登录无验证码登录后台并保持会话状态持续监控固定页面信息。
- HttpWebRequest提交数据后如何保持会话状态?
- 基于RFC6265 (HTTP状态管理协议)实现简单的登录系统
- 用URL重写来实现会话管理
- 基于RFC6265 (HTTP状态管理协议)实现简单的登录系统
- 会话状态保持,JSESSIONID,COOKIE,URL重写
- 会话状态保持,JSESSIONID,COOKIE,URL重写
- 在 ASP.NET 中实现会话状态的基础
- 使用HttpHandler实现URL重写
- JSP实现浏览器关闭cookies情况下的会话管理
- 在 ASP.NET 中实现会话状态的基础
- 在 ASP.NET 中实现会话状态的基础