COOKIE 應用的注意事項有哪些?

  1.  牢記setcookie()函數的特性

  在使用setcookie()函數創建COOKIE 之前,不能有任何HTML(即使是空格、空行也不可以)輸出,這點與session_start()函數類似。如果犯了這個錯誤,那麼得到的將是一堆錯誤代碼。

  2.  爲什麼$_COOKIE 在當前頁獲取不到COOKIE 值

  通過setcookie() 函數創建COOKIE 後,在當前頁應用$_COOKIE 獲取不到 COOKIE 的值,必須是在刷新或到達下一頁面後才能獲取到COOKIE 值。因爲setcookie() 函數執行後,向客戶端發送一個COOKIE, 如果不刷新或瀏覽下一個頁面,客戶端就不能將COOKIE 送回。

  3.  COOKIE 會一直伴隨網站中的每個請求,直到COOKIE 過期

  瀏覽器創建一個 COOKIE 後,對於每一個針對該網站的請求,都會在 Header 中帶着這個COOKIE,而且瀏覽器會這樣一直髮送,直到COOKIE 過期爲止。不過,對於其他網站的請求COOKIE 是絕對不會跟着發送。

  4.  使用COOKIE 的限制

  (1)如果COOKIE 不設置過期時間,那麼它的生命週期就是瀏覽器會話的期間,只要關閉瀏覽器 ,COOKIE就消失,這是會話COOKIE,它一般不保存在硬盤上,而是保存在內存中。

  (2)如果COOKIE 設置過期時間,那麼瀏覽器就會把COOKIE 保存到硬盤中,再次打開瀏覽器時依然有效,直到它過期爲止。

  (3)不是所有的瀏覽器都支持 COOKIE。

  (4)COOKIE 數據是以明文的形式存儲於客戶端的計算機中,不適合保存敏感的、未加密的數據。

  (5)COOKIE存儲數據量有一定的限制。一個瀏覽器允許最多存儲300個 COOKIE 文件,而且每個COOKIE 文件支持最大容量爲4KB; ,每個域名最多支持20個 COOKIE, 如果達到限制,瀏覽器會自動隨機刪除COOKIE。

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