Cookie çéå¶
ããå¨å¼å§è®¨è®º Cookie çææ¯ç»èä¹åï¼ææ³å
ä»ç»ä¸ä¸ Cookie åºç¨çå æ¡éå¶ã大å¤æ°æµè§å¨æ¯ææå¤å¯è¾¾ 4096 åèç Cookieï¼å¦æè¦å°ä¸ºæ°ä¸å¤çå 个å¼ä¿åå°ç¨æ·è®¡ç®æºä¸ï¼è¿ä¸ç©ºé´å·²ç»è¶³å¤å¤§ï¼ä½æ¨ä¸è½ç¨ä¸ä¸ª Cookie æ¥ä¿åæ°æ®éæå
¶ä»å¤§éæ°æ®ãå¨å®é
åºç¨ä¸ï¼æ¨å¯è½å¹¶ä¸å¸æå¨ Cookie ä¸ä¿å大éçç¨æ·ä¿¡æ¯ï¼èåªå¸æä¿åç¨æ·ç¼å·æå
¶ä»æ è¯ç¬¦ãä¹åï¼å½ç¨æ·å次访é®æ¨çç«ç¹æ¶ï¼æ¨å°±å¯ä»¥ä½¿ç¨è¯¥ç¨æ· ID å¨æ°æ®åºä¸æ¥æ¾ç¨æ·ç详ç»ä¿¡æ¯ãï¼æå
³ä¿åç¨æ·ä¿¡æ¯ç说æï¼è¯·åé
Cookie åå®å
¨æ§ãï¼
ããæµè§å¨è¿éå¶äºæ¨çç«ç¹å¯ä»¥å¨ç¨æ·è®¡ç®æºä¸ä¿åç Cookie æ°ã大å¤æ°æµè§å¨åªå
许æ¯ä¸ªç«ç¹ä¿å 20 个 Cookieãå¦æè¯å¾ä¿åæ´å¤ç Cookieï¼åæå
ä¿åç Cookie å°±ä¼è¢«å é¤ãè¿æäºæµè§å¨ä¼å¯¹æ¥èªææç«ç¹ç Cookie æ»æ°ä½åºéå¶ï¼è¿ä¸ªéå¶é常为 300 个ã
ããæ¨æå¯è½éå°ç Cookie éå¶æ¯ï¼ç¨æ·å¯ä»¥è®¾ç½®èªå·±çæµè§å¨ï¼æç»æ¥å Cookieãæ¨å¾é¾è§£å³è¿ä¸ªé®é¢ï¼é¤éå®å
¨ä¸ä½¿ç¨ Cookie èæ¯éè¿å
¶ä»æºå¶æ¥ä¿åç¨æ·ç¸å
³ä¿¡æ¯ãä¿åç¨æ·ä¿¡æ¯çä¸ç§å¸¸ç¨æ¹æ³æ¯ä¼è¯ç¶æï¼ä½ä¼è¯ç¶æåä¾èµäº Cookieãè¿ä¸ç¹å¨åé¢ç Cookie åä¼è¯ç¶æä¸éè¿°ã
ãã注æï¼æå
³ç¶æ管çå Web åºç¨ç¨åºä¸ç¨äºä¿åä¿¡æ¯çé项ç详ç»ä¿¡æ¯ï¼è¯·åé
Introduction to Web Forms Stateï¼è±æï¼å State Management Recommendationsï¼è±æï¼ã
æ´ä¸è¬çç»éªå¾å¯è½æ¯ï¼å°½ç®¡ Cookie å¨åºç¨ç¨åºä¸é常æç¨ï¼åºç¨ç¨åºä¹ä¸åºè¯¥ä¾èµäºè½å¤ä¿å Cookieãå©ç¨ Cookie å¯ä»¥åå°é¦ä¸æ·»è±ï¼ä½ä¸è¦å©ç¨å®ä»¬æ¥æ¯æå
³é®åè½ãå¦ææ¨çåºç¨ç¨åºå¿
é¡»ä½¿ç¨ Cookieï¼åæ¨å¯ä»¥éè¿æµè¯æ¥ç¡®å®æµè§å¨æ¯å¦æ¥å Cookieãæå¨æ¬æåé¢çæ£æ¥æµè§å¨æ¯å¦æ¥å Cookie ä¸èä¸ç®åä»ç»äºä¸ç§æµè¯æ¹æ³ã
ããç¼å Cookie
ããæ¨å¯ä»¥å©ç¨é¡µé¢ç Responseï¼è±æï¼å±æ§æ¥ç¼å Cookieï¼è¯¥å±æ§æä¾ç对象使ç¨æ·å¯ä»¥å°ä¿¡æ¯æ·»å å°ç±é¡µé¢åæµè§å¨åç°çä¿¡æ¯ä¸ãResponse 对象æ¯æä¸ä¸ªå为 Cookiesï¼è±æï¼çéåï¼æ¨å¯ä»¥åå
¶ä¸æ·»å è¦åå
¥æµè§å¨ç Cookieã
ãã注æï¼ä¸é¢è¦è®¨è®ºç Response 对象å Request 对象åå«æ¯å
å« HttpResponseï¼è±æï¼å HttpRequestï¼è±æï¼ç±»å®ä¾ç页é¢çå±æ§ãè¦å¨ææ¡£ä¸æ¥æ¾ Response å Request çä¿¡æ¯ï¼è¯·åé
HttpResponse å HttpRequest ä¸çå
容ã
ããå¨å建 Cookie æ¶ï¼æ¨éè¦æå®å 个å¼ãæåï¼æ¨è¦æå® Cookie çå称åå
¶ä¸ä¿åçå¼ãæ¨å¯ä»¥å建å¤ä¸ª Cookieï¼æ¯ä¸ª Cookie é½å¿
é¡»å
·æå¯ä¸çå称ï¼ä»¥ä¾¿æ¥å读åæ¶è¯å«ãï¼Cookie æ¯æå称ä¿åçï¼æ以å¦ææ¨å建äºä¸¤ä¸ªå称ç¸åç Cookieï¼åä¿åçé£ä¸ä¸ªå°è¦çåä¸ä¸ªãï¼
ããæ¨å¯è½è¿å¸ææå® Cookie çè¿ææ¥æåæ¶é´ãCookie ä¸è¬é½åå
¥å°ç¨æ·çç£çï¼ç¶åå¯è½ä¸ç´é½çå¨ç£çä¸ãå æ¤ï¼æ¨å¯ä»¥æå® Cookie è¿æçæ¥æåæ¶é´ãå½ç¨æ·å次访é®æ¨çç«ç¹æ¶ï¼æµè§å¨ä¼å
æ£æ¥æ¨ç«ç¹ç Cookie éåï¼å¦ææ个 Cookie å·²ç»è¿æï¼æµè§å¨ä¸ä¼æè¿ä¸ª Cookie é页é¢è¯·æ±ä¸èµ·åéç»æå¡å¨ï¼èæ¯å é¤è¿ä¸ªå·²ç»è¿æç Cookieãï¼æ¨çç«ç¹å¯è½å·²ç»å¨ç¨æ·è®¡ç®æºä¸åå
¥äºå¤ä¸ª Cookieï¼æ¯ä¸ª Cookie é½æåèªçè¿ææ¥æåæ¶é´ãï¼ è¯·æ³¨æï¼ç±æµè§å¨è´è´£ç®¡ç硬çä¸ç Cookieï¼è¿å°å½±åæ¨å¨åºç¨ç¨åºä¸å¯¹ Cookie ç使ç¨ï¼æå¾å¿«ä¼ä»ç»è¿æ¹é¢çå
容ã
ããä¸ä¸ª Cookie çæææåºä¸ºå¤é¿ï¼è¿åå³äº Cookie çç¨éï¼æ¢å¥è¯è¯´ï¼åå³äºæ¨çåºç¨ç¨åºéè¦ Cookie å¼ä¿æææçæ¶é´æå¤é¿ãå¦æå©ç¨ Cookie ç»è®¡ç½ç«ç访é®è
ï¼æ¨å¯ä»¥ææææ设置为 1 å¹´ï¼å¦ææ个ç¨æ·å·²æä¸å¹´æ¶é´æªè®¿é®æ¨çç«ç¹ï¼åå¯ä»¥æ该ç¨æ·å½ä½æ°ç访é®è
ï¼ å¦æå©ç¨ Cookie æ¥ä¿åç¨æ·çé¦é项ï¼åå¯ä»¥æå
¶è®¾ç½®ä¸ºæ°¸è¿ææï¼ä¾å¦ 50 å¹´åå°æï¼ï¼å 为å®æéæ°è®¾ç½®é¦é项对ç¨æ·èè¨æ¯æ¯è¾éº»ç¦çãææ¶ï¼æ¨å¯è½éè¦ç¼åå¨æ°ç§ææ°åéå
å³è¿æç Cookieãå¨æ¬æåé¢çæ£æ¥æµè§å¨æ¯å¦æ¥å Cookie ä¸èä¸ï¼æå举äºä¸ä¸ªç¤ºä¾ï¼è¯¥ç¤ºä¾ä¸å建ç Cookie çå®é
æææå°±åªæå ç§ã
ãã注æï¼ä¸è¦å¿è®°ç¨æ·éæ¶å¯ä»¥å é¤èªå·±è®¡ç®æºä¸ç Cookieï¼æ以å³ä½¿æ¨ä¿åäºé¿æææç Cookieï¼ç¨æ·ä¹å¯ä»¥èªè¡å³å®å°å
¶å
¨é¨å é¤ï¼åæ¶æ¸
é¤ä¿åå¨ Cookie ä¸çææ设置ã
ããå¦æ没æ设置 Cookie çæææï¼è¿æ¯å¯ä»¥å建 Cookieï¼ä½å®ä¸ä¼ä¿åå°ç¨æ·ç硬çä¸ï¼èæ¯ä¼æ为ç¨æ·ä¼è¯ä¿¡æ¯çä¸é¨åãå¦æç¨æ·å
³éæµè§å¨æä¼è¯è¶
æ¶ï¼è¯¥ Cookie å°±ä¼è¢«å é¤ãè¿ç§éæ°¸ä¹
æ§ç Cookie å¾éåç¨æ¥ä¿ååªéçæ¶é´ä¿åçä¿¡æ¯ï¼æè
ä¿åç±äºå®å
¨åå ä¸åºè¯¥åå
¥å®¢æ·è®¡ç®æºç£ççä¿¡æ¯ãä¾å¦ï¼å¦æç¨æ·ä½¿ç¨çæ¯ä¸å°å
¬ç¨è®¡ç®æºï¼èæ¨ä¸å¸ææ Cookie åå
¥è¿ç§è®¡ç®æºçç£çä¸ï¼è¿æ¶å°±å¯ä»¥ä½¿ç¨éæ°¸ä¹
æ§ç Cookieã
ããæ¨å¯ä»¥éè¿å¤ç§æ¹æ³æ Cookie æ·»å å° Response.Cookies éåä¸ã以ä¸ç¤ºä¾ä»ç»äºä¸¤ç§å®ææ¤ä»»å¡çæ¹æ³ï¼
Response.Cookies("userName").Value = "mike"
Response.Cookies("userName").Expires = DateTime.Now.AddDays(1)
Dim aCookie As New HttpCookie("lastVisit")
aCookie.Value = DateTime.Now.ToString
aCookie.Expires = DateTime.Now.AddDays(1)
Response.Cookies.Add(aCookie)
ãã该示ä¾å Cookies éåä¸æ·»å äºä¸¤ä¸ª Cookieï¼ä¸ä¸ªç§°ä¸ºâuserNameâï¼å¦ä¸ä¸ªç§°ä¸ºâlastVisitâã对äºç¬¬ä¸ä¸ª Cookieï¼æç´æ¥è®¾ç½®äº Response.Cookies éåçå¼ãæ¨å¯ä»¥ä½¿ç¨è¿ç§æ¹æ³åéåä¸æ·»å å¼ï¼å 为 Response.Cookies æ¯ä» NameObjectCollectionBaseï¼è±æï¼ç±»åçç¹æ®éåæ´¾çå¾å°çã
ãã对äºç¬¬äºä¸ª Cookieï¼æåå»ºäº Cookie 对象çä¸ä¸ªå®ä¾ï¼HttpCookie [è±æ] ç±»åï¼ï¼å¹¶è®¾ç½®äºå
¶å±æ§ï¼ç¶åéè¿ Add æ¹æ³æå®æ·»å å° Response.Cookies éåãå®ä¾å HttpCookie 对象æ¶ï¼æ¨å¿
é¡»æ Cookie å称ä½ä¸ºæé å½æ°çä¸é¨åè¿è¡ä¼ éã
ããè¿ä¸¤ä¸ªç¤ºä¾å®æäºç¸åçä»»å¡ï¼å³åæµè§å¨åå
¥ä¸ä¸ª Cookieãæ¨è¦éç¨åªç§æ¹æ³ä¸»è¦åå³äºæ¨ç个人å好ãæ¨å¯è½ä¼åç°ç¬¬äºç§æ¹æ³å¨è®¾ç½® Cookie å±æ§æ¹é¢è¦ç¨å¾®å®¹æä¸äºï¼ä½åæ¶æ¨ä¹ä¼æ³¨æå°ä¸¤è
çå·®å«å¹¶ä¸æ¯å¾å¤§ã
ããå¨è¿ä¸¤ç§æ¹æ³ä¸ï¼æææå¼å¿
须为 DateTime ç±»åãèâlastVisitedâå¼ä¹æ¯æ¥æ/æ¶é´å¼ãä½å¨è¿ç§æ
åµä¸ï¼æå¿
é¡»ææ¥æ/æ¶é´å¼è½¬æ¢ä¸ºå符串ï¼å 为 Cookie ä¸çä»»ä½å¼æç»é½æ¯ä»¥å符串çå½¢å¼ä¿åçã 详ç»åèMSDN帮å©ææ¡£
http://msdn.microsoft.com/zh-cn/library/ms178194(VS.80).aspx