Response-->cookie的新增和刪除

a166244發表於2016-02-22

**

Cookie

**
Cookie 是基於 set-Cookie響應頭Cookie請求頭工作的,
伺服器可以傳送set-Cookie請求頭命令瀏覽器儲存一個cookie資訊,瀏覽器會在訪問伺服器時以Cookie請求頭的方式帶回之前儲存的資訊

  • 獲取cookie集合:
    - request.getCookies();

  • 新增一個cookie:

    • response.addCookie(Cookie c);
  • 新建一個cookie:
    new Cookie(String name,String value) — Cookie在構造的時候就需要設定好cookie的名字和值

  • 獲取cookie的名字:
    • getName();
  • 獲取cookie的值:
    • getValue();
  • 設定cookie的值:
    • setValue();
  • cookie有效期的設定和獲取

    • setMaxAge()與getMaxAge()方法
      – 一個Cookie如果沒有設定過MaxAge則這個Cookie是一個會話級別的Cookie,這個Cookie資訊打給瀏覽器後瀏覽器會將它儲存在瀏覽器的記憶體中,這意味著只要瀏覽器已關閉隨著瀏覽器記憶體的銷燬,Cookie資訊也就消失了.
      一個Cookie也可以設定MaxAge,瀏覽器一旦發現收到的Cookie被設定了MaxAge,則會將這個Cookie資訊以檔案的形式儲存在瀏覽器的臨時資料夾中,儲存到指定的時間到來位置.這樣一來即使多次開關瀏覽器,由於這些瀏覽器都能在臨時資料夾中看到cookie檔案,所以在cookie失效之前cookie資訊都存在.
    • 刪除一個Cookie
      想要命令瀏覽器刪除一個Cookie,
      • 傳送一個同名同path的cookie,
      • maxAge設定為0,
        瀏覽器以名字+path識別cookie,發現同名同path,cookie覆蓋後立即超時被刪除,從而就刪除了cookie.
  • setPath()與getPath()方法

    • 用來通知瀏覽器在訪問伺服器中的哪個路徑及其子路徑時帶著當前cookie資訊過來
      如果不明確設定,則預設的路徑是傳送Cookie的Servlet所在的路徑
      http://localhost/Day05/servlet/
  • setDomain()與getDomain()方法
    – 用來通知瀏覽器在訪問哪個域名的時候帶著當前的cookie資訊.但是要注意,現代的瀏覽器一旦發現cookie設定過domain資訊則會拒絕接收這個Cookie.我們平常不要設定這個方法

轉載於:https://www.cnblogs.com/shiguangmanbu2016/p/5932916.html

相關文章