Cookie(Secure和HttpOnly屬性) JSESSIONID 刷新

目錄

一:Cookie(Secure和HttpOnly屬性)

二:JSESSIONID是什麼

三: JSESSIONID 刷新


一:Cookie(Secure和HttpOnly屬性)

 基於安全的考慮,需要給cookie加上Secure和HttpOnly屬性,HttpOnly比較好理解,設置HttpOnly=truecookie不能被js獲取到,無法用document.cookie打出cookie的內容

    Secure屬性是說如果一個cookie被設置了Secure=true,那麼這個cookie只能用https協議發送給服務器用http協議是不發送的。換句話說,cookie是在https的情況下創建的,而且他的Secure=true,那麼之後你一直用https訪問其他的頁面(比如登錄之後點擊其他子頁面),cookie會被髮送到服務器,你無需重新登錄就可以跳轉到其他頁面。但是如果這是你把url改成http協議訪問其他頁面,你就需要重新登錄了,因爲這個cookie不能在http協議中發送。

    下圖所示:Secure和HttpOnly 勾選後,代表  =true

二:JSESSIONID是什麼

  老實說一開始看到這個有點懵,寫Java這麼久沒看過這東西。

  首先,JSESSIONID是一個Cookie,Servlet容器(tomcat,jetty)用來記錄用戶session。

  什麼時候種下JSESSIONID

   創建會話時,即調用request.getSession()的時候,關於getSession就不說了。補充幾點是,訪問html是不會創建session的,       JSP頁面默認是會創建session的,可以在JSP頁面裏面關掉自動創建session

三: JSESSIONID 刷新

  在註銷登錄,登錄超時添加:

//HttpServletRequest request
HttpSession session = request.getSession();
session.invalidate();

    session.invalidate()是將session設置爲失效,一般在退出時使用,但要注意的是:session失效的同時 瀏覽器會立即創建一個新的session  ,JSESSIONID 只是tomcat中對session id的叫法,在其它容器裏面,不一定就是叫JSESSIONID

    session.invalidate()執行此代碼時 JSESSIONID 會失效,瀏覽器會立即創建一個新的JSESSIONID ,JSESSIONID 刷新

參考:JSESSIONID:https://www.jianshu.com/p/f2e5db637ed4

           Cookie:https://www.cnblogs.com/diligenceday/p/10885868.html

ps :有什麼不清楚的可以評論哦。

     才疏學淺 ,請多指教 !

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章