日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

url override and HttpSession implements session

發布時間:2023/12/2 编程问答 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 url override and HttpSession implements session 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

背景

  HttpSession默認使用Cookie存儲Session ID,如果在用戶禁用瀏覽器Cookie的功能后,仍打算運用HttpSession來進行會話管理,那么可以搭配URL重寫來實現。


實現方法

  使用HttpServletResponse的encodeURL()方法協助產生URL。
  服務器端調用request.getSession()時,
  如果容器能從HTTP請求中取得帶有Session ID的Cookie,則response.encodeURL()會將傳入的URL原封不動地輸出
  如果容器不能從HTTP請求中取得帶有Session ID的Cookie時(通常是瀏覽器禁用Cookie的情況),response.encodeURL()會自動產生帶有Session ID的URL


注意

  在瀏覽器第一次請求網站時,容器并不知道瀏覽器是否禁用了Cookie,所以容器的做法是Cookie與URL重寫兩種方式并用來往客戶端發送session Id。

  url重寫實現HttpSession可以實現跨瀏覽器的會話管理。在HttpSession存活期間,只要有人取得當次的Session ID,在另一瀏覽器相同的URL附上Session ID,就可以取得同一個HttpSession對象。


重定向

  HttpServletResponse上的encodeRedirectURL()方法,可以在要求瀏覽器重定向時,在URL上攜帶Session ID。


Demo

package com.test;import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import java.io.IOException; import java.io.PrintWriter;@WebServlet("/url.session") public class URLOverrideHttpSession extends HttpServlet {protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException {response.setContentType("text/html;charset=UTF-8");PrintWriter out = response.getWriter();/*** 實現url重寫來實現session,只需要兩行代碼* 1、獲取session* 2、使用responce發送url** 注意:這兩行代碼的順序不可變*/HttpSession session = request.getSession();out.println("<a href='" + response.encodeURL("url.session") + "'>提交</a>");out.close();} }

測試方法

  測試過程中注意觀察地址欄URl
  1、訪問:127.0.0.1:8080/url.session
  2、點擊“提交”
  3、關閉瀏覽器的cookie功能,再次測試

轉載于:https://www.cnblogs.com/Mike_Chang/p/10054557.html

總結

以上是生活随笔為你收集整理的url override and HttpSession implements session的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。