Servlet與JSP進階五:瀏覽器Cookie
本篇部落格的主要內容是:
● 為什麼要有Cookie;
● Cookie本地存放地址;
● 如何在程式中設定(新增)Cookie;
● 如何在瀏覽器中檢視Cookie資訊;
● 如何在程式中獲取Cookie資訊;
● 如何設定Cookie時效;
Cookie(小甜餅~~~)
一個小例子:例如平常登入一個網易郵箱時,如果選擇“十天內免登入”,登入後,關閉瀏覽器;重新開啟瀏覽器,會發現網易郵箱的登入狀態並沒有消失。
其底層的實現原理是,網易郵箱網利用了Cookie技術,存放了使用者的登入資訊;瀏覽器二次訪問網易郵箱首頁時,瀏覽器會把Cookie中存放的使用者登入資訊提取出來,並通知伺服器說之前這個使用者已經登入過了,並不需要重新登入;
“十天內免登入”:這個Cookie只能儲存十天,十天以後,將會被瀏覽器自動清除;
Cookie放在哪兒了?
設定Cookie示例:
下面,設定了Cookie,並將Cookie資訊隨著response(響應)發回到瀏覽器端;瀏覽器將這個Cookie資訊儲存到本地的檔案中;之後每一次請求,request(請求物件)都會包含這個Cookie資訊,一併傳送到對應的地址上。
Cookie要匯入這個包:
效果:
對於上面的過程中,Cookie是否生效嘞?在瀏覽器中檢視Cookie。
獲取Cookie
效果:
上面稍微改造下:
效果:
Cookie的時效性怎麼弄?:Cookie的預設時效
當Cookie沒有設定有效期時,Cookie的有效期就是當前的瀏覽器視窗:
在上面的例子中,我們先訪問了ImoocLoginServlet這個Servlet,我們是在這個Servlet中設定的Cookie,然後在沒有關閉瀏覽器的情況下,又訪問了ImoocIndexServlet這個Servlet,在這個Servlet中我們訪問了Cookie;
因為沒有關閉瀏覽器,所以ImoocLoginServlet設定的Cookie資訊會有效,ImoocIndexServlet能正常訪問到Cookie資訊;
但一旦,我們關閉了瀏覽器,重新開啟瀏覽器,直接訪問ImoocIndexServlet時:報錯了,Cookie失效了
其實,上面報了空指標異常,其實cs這個陣列是空的(因為所有的Cookie資訊都失效了),會引發空指標異常了;
所以上面的程式可以改一下,增強健壯性:
上面程式處理了可能出現的錯誤情況,此時再訪問時:
怎麼設定Cookie時效:
此時先訪問ImoocLoginServlet,先讓瀏覽器將Cookie資訊儲存;
關閉瀏覽器:然後重啟,訪問ImoocIndexServlet:結果,發現Cookie並沒有因為關閉了瀏覽器而失效,因為我們把其時效性設定成了7天;
cookie是保證使用者會話的基礎;
相關文章
- jsp進階教程和ServletJSServlet
- 谷歌瀏覽器管理cookie谷歌瀏覽器Cookie
- web前端進階篇(二) 瀏覽器 WebpackWeb前端瀏覽器
- Android進階2之WebView(瀏覽器)AndroidWebView瀏覽器
- Chrome瀏覽器手動新增CookieChrome瀏覽器Cookie
- 瀏覽器手動設定Cookie瀏覽器Cookie
- JSP與ServletJSServlet
- httpServletRequest獲取瀏覽器的cookieHTTPServlet瀏覽器Cookie
- IE瀏覽器Cookie資訊提取工具Galleta瀏覽器Cookie
- 關於各瀏覽器的cookie上限瀏覽器Cookie
- 自定義web瀏覽器(五)Web瀏覽器
- Mac瀏覽器快取清理軟體:CookieMac瀏覽器快取Cookie
- 檢測當前瀏覽器是否支援cookie瀏覽器Cookie
- Cookie for Mac瀏覽器快取清理軟體CookieMac瀏覽器快取
- 瀏覽器快取清理工具:Cookie for Mac瀏覽器快取CookieMac
- 深入瞭解瀏覽器儲存:對比Cookie、LocalStorage、sessionStorage與IndexedDB瀏覽器CookieSessionIndex
- ajax 請求攜帶cookie 瀏覽器報錯Cookie瀏覽器
- 判斷客戶瀏覽器是否支援cookie (轉)瀏覽器Cookie
- history pushState 實現瀏覽器前進與後退瀏覽器
- cookie已涼,瀏覽器儲存該怎麼做Cookie瀏覽器
- 當瀏覽器 禁用 cookie 時 , 我們如何使用 session瀏覽器CookieSession
- javascript如何判斷當前瀏覽器是否支援cookieJavaScript瀏覽器Cookie
- Cookie記錄瀏覽記錄Cookie
- IE瀏覽器無法儲存cookie的解決方法瀏覽器Cookie
- 【瀏覽器】瀏覽器基本工作原理瀏覽器
- JSP 商品瀏覽[Web application]JSWebAPP
- 基於.net開發chrome核心瀏覽器【五】Chrome瀏覽器
- 谷歌瀏覽器檢視和手動設定cookie的值谷歌瀏覽器Cookie
- 瀏覽器的重繪與重排瀏覽器
- 瀏覽器瀏覽器
- Chrome 瀏覽器修改 UA 模擬其它瀏覽器,包括移動瀏覽器Chrome瀏覽器
- 如何用jsp在瀏覽器中開啟用word模板生成的jsp頁?JS瀏覽器
- 瀏覽器重繪(repaint)重排(reflow)與優化[瀏覽器機制]瀏覽器AI優化
- jsp servlet javabeanJSServletJavaBean
- 基石-初見瀏覽器(一):瀏覽器渲染瀏覽器
- Min瀏覽器: 更快更輕量瀏覽器瀏覽器
- .net火狐瀏覽器 ie瀏覽器 判斷瀏覽器
- 高階前端進階(五)前端