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...