學習筆記之cookie

2021-07-15 23:53:27 字數 2649 閱讀 2171

cookie意為「甜餅」,是由w3c組織提出,最早由netscape社群發展的一種機制。目前cookie已經成為標準,所有的主流瀏覽器如ie、netscape、firefox、opera等都支援cookie。

由於http是一種無狀態的協議,伺服器單從網路連線上無從知道客戶身份。怎麼辦呢?就給客戶端們頒發乙個通行證吧,每人乙個,無論誰訪問都必須攜帶自己通行證。這樣伺服器就能從通行證上確認客戶身份了。這就是cookie的工作原理。

cookie實際上是一小段的文字資訊。客戶端請求伺服器,如果伺服器需要記錄該使用者狀態,就使用response向客戶端瀏覽器頒發乙個cookie。客戶端瀏覽器會把cookie儲存起來。當瀏覽器再請求該**時,瀏覽器把請求的**連同該cookie一同提交給伺服器。伺服器檢查該cookie,以此來辨認使用者狀態。伺服器還可以根據需要修改cookie的內容。

函式原型

引數講解

引數描述name

必需。規定 cookie 的名稱。

value

必需。規定 cookie 的值。

expire

可選。規定 cookie 的有效期。

path

可選。規定 cookie 的伺服器路徑。

domain

可選。規定 cookie 的網域名稱。

secure

可選。規定是否通過安全的 https 連線來傳輸 cookie。

例子

//生成乙個會話期有效的cookie

setcookie

("testcookie"

,"demo"

,time

());

//生成乙個有效期為1小時的的cookie

將expire值設定為比當前時間戳小的值

setcookie 

("testcookie",""

,time

()-1000

);

請求資訊

request headers

accept:

accept-encoding:

gzip, deflate, sdch

accept-language:

zh-cn,zh;q=0.8,en;q=0.6

cache-control:

max-age=0

connection:

keep-alive

cookie:

demo=value; demo1=value11; outfox_search_user_id_ncoo=199069126.06587055

host:

mywww.com

upgrade-insecure-requests:

1

user-agent:

返回資訊

response headers

connection:

keep-alive

content-type:

text/html

date:

mon, 01 aug 2016 09:04:21 gmt

keep-alive:

timeout=5, max=100

server:

apache/2.4.10 (win32) openssl/0.9.8zb mod_fcgid/2.3.9

set-cookie:

demo1=value11

transfer-encoding:

chunked

x-powered-by:

php/5.3.29

參考: 

cookie學習筆記

cookie類的方法 public cookie string name,string value setvalue與getvalue方法 setmaxage與getmaxage方法 setpath與getpath方法 setdomain與getdomain方法 getname方法 1.建立cook...

cookie(學習筆記)

之前對於保持登入態這個問題,一直比較疑惑,自己也沒有實現過,看了這篇文章之後好像明白了什麼,聊一聊cookie 所以看完以後自己為了熟記,有了這篇學習筆記。cookie是瀏覽器提供的功能,可以儲存字串,cookie以網域名稱的方式區分的,每乙個網域名稱下最多可以有20個 實際不止 每個cookie大...

Cookie學習筆記

客戶端會話技術,將資料儲存到客戶端,每次請求都帶上cookie資訊 客戶端第一次請求伺服器,伺服器使用set cookie響應頭裝載cookie資訊鍵值對,響應客戶端,客戶端儲存cookie資訊,再次請求時,使用cookie請求頭裝載cookie資訊鍵值對,傳送給伺服器 1 一次可不可以傳送多個co...