Á´½ÓÔªËØ£¬Ò³ÃæÖÐΨһ¸´ÔӵIJ¿·ÖÊÇResponse.Cookies¼¯ºÏ¡£Í¨¹ýÖ»ÄÜ·ÃÎÊcookie£¬¶ÁÈ¡Request.Cookies¼¯ºÏÖеÄÖµ¡£µ±·ÃÎÊResponse.Cookie¼¯ºÏʱ£¬±ØÐëÔÚ·¢ËÍÈκÎÊä³öµ½¿Í»§¶Ë֮ǰ½áÊø¶ÔËüµÄËùÓÐÒýÓá£Òò´ËÔÚÒ³ÃæµÄÉϲ¿£¬Í¨¹ý±éÀú¼¯ºÏ´´½¨Ò³ÃæµÄHTML·ÅÔÚÒ»¸ö¾Ö²¿×Ö·û´®±äÁ¿ÖС£
StrCookies = ¡°¡±
¡®We can only read the key names and not the values because
¡®the Response.Cookies collection is ¡®write only¡¯
For Each objItem In Response.Cookies
If Response.Cookies(objItem).HasKeys Then
¡®Use another For Each to iterate all subkeys
For Each objItemKey in Response.Cookies(objItem)
StrCookies = strCookies & objItem & ¡°(¡° &objItemKey & ¡°)
¡±
Next
Else
¡®print out the cookie as normal
strCookies = strCookies & objItem & ¡°
¡±
End If
Next
È»ºóÔÚÒ³ÃæµÄÊʵ±µãÉϲåÈë½á¹û¡£
The Response.Cookies Collection
Response.Cookies
is a write-only collection so the values cannot be displayed
<% = strCookies %>
ASPÖеÄcookieµÄʹÓÃ
ÔÚÇ°ÃæËù¿´µ½Ò³ÃæÖУ¬Ò»Ð©¼¯ºÏ¡¢ÊôÐԺͷ½·¨ÒѾÁ´½Óµ½ÆäËûµÄÒ³Ãæ£¬ÓÃÀ´ÏÔʾRequestºÍResponse¶ÔÏóµÄ¸÷¸öÌØÐÔϸ½Ú£¬ÎÒÃǽ«ÔÚ±¾ÕÂµÄÆäÓàµÄ²¿·ÖÑо¿ÕâЩÄÚÈÝ£¬ÎÒÃǽ«Ñ§Ï°ÄÇЩÌṩ¸øASP´úÂëʹÓõļ¯ºÏ¡¢·½·¨ºÍÊôÐԵĸ÷ÖÖ¼¼Êõ¡£
ÔÚ±¾ÕÂÇ°ÃæÒѾ¿´µ½ÁËÈçºÎʹÓÃRequest.CookiesºÍResponse.Cookies¼¯ºÏÀ´´´½¨ºÍÔĶÁcookie£¬µã»÷ÉÏÃæÁ½¸öÒ³ÃæÖеÄÈÎÒ»¸öµÄ¡°Cookies¡±Á´½Óʱ£¬Õâ¸öÒ³Ãæ°üº¬Ò»Ð©ÉèÖÃÁËÈý¸öcookieµÄÖµµÄASP´úÂ룬ÇÒÔÚÒ³ÃæÉÏÏÔʾ±»Ö´ÐеĴúÂ룬ÈçÏÂͼËùʾ£º
µã»÷¡°Show Cookies¡±µÄÁ´½Óʱ£¬cookieµÄÄÚÈݾÍÏÔʾ³öÀ´ÁË¡£ÕâÊÇͨ¹ý±éÀúRequest.Cookies¼¯ºÏ¶øµÃµ½µÄ£¬ÕâÓëÔÚÉÏÒ»Ò³ËùÓõķ½Ê½ÍêÈ«Ïàͬ£¬ÈçÏÂͼËùʾ£º
Õâ¸öÆÁĻͼÏÔʾµÄÊÇÔËÐÐÇ°Ãæ¿´µ½µÄÉèÖÃcookieÖµµÄ´úÂëµÄ½á¹û¡£¿ÉÄܻῴµ½ÆäËûÒѾ´æÖüÔÚ¼ÆËã»úϵͳÀïµÄcookie¡£È»¶ø£¬¼ÙÈçÏÖÔڹرÕä¯ÀÀÆ÷È»ºóÖØÐ´ò¿ªä¯ÀÀÆ÷£¬È»ºóÔËÐÐÏÔʾcookieµÄÒ³Ãæ£¬³ýÁËTimedCookieÍ⣬ËùÓеÄcookie¶¼²»¼ûÁË£¬ÕâÊÇÓÉÓÚÖ»ÓÐÕâ¸öTimedCookie¾ßÓÐÓÐЧÆÚµÄÉèÖã¬ÆäËûµÄÔÚä¯ÀÀÆ÷¹Ø±Õʱ£¬×Ô¶¯ÏûʧÁË¡£
1£© cookieÖд洢Óû§µÄϸ½ÚÇé¿ö
¿ÉÒÔʹÓÃcookieÀ´´æ´¢ÕâÁ½ÀàÖµ£ºµ±ä¯ÀÀÆ÷¹Ø±ÕʱÎÒÃDz»Ïë±£´æµÄÖµ£¨ÀýÈçÓû§µÄ×¢²áÐÅÏ¢£©ÒÔ¼°ÔÚÓû§·ÃÎÊÕ¾µãʱҪ±£ÁôµÄÖµ¡£ÔÚÿÖÖÇé¿öÏÂcookieµÄÖµ¶ÔÓÚÀ´×ÔÓû§ä¯ÀÀÆ÷µÄÿ¸öÒ³ÃæÇëÇóµÄASP¶¼ÊÇ¿ÉÓõġ£
È»¶ø£¬ÐèÒª¼ÇסµÄÊÇ£¬cookieÖ»ÓÐÔÚ¶ÔCookieÖеÄÐéÄâ·¾¶£¨path£©ÄÚµÄÒ³Ãæ·¢³öÇëÇóʱ£¬²Å»á·¢Íù·þÎñÆ÷¡£È±Ê¡Ê±£¬¼ÙÈçpathµÄÖµÔÚcookieÖÐûÓÐÉèÖã¬ÔòÆäֵΪ´´½¨cookieµÄÒ³ÃæµÄÐéÄâ·¾¶¡£ÎªÊ¹Ò»¸öcookie·¢ÍùÒ»¸öÕ¾µãµÄËùÓÐÒ³Ãæ£¬ÐèҪʹÓÃpath=¡°/¡±¡£
ÕâÀïÊǸöʵÀý£¬´Ó×Ô¶¨ÒåµÄLoginÒ³ÃæÖУ¬½«Óû§µÄ×¢²áÐÅÏ¢´æÖüÔÚÒ»¸öcookieÖУ¬ÓÉÓÚûÓÐÓ¦ÓÃÓÐЧÆÚ£¬cookieÖµ½öÔڹرÕÕâ¸öä¯ÀÀÆ÷Õâǰ±£Áô£º
...
Request.Cookies(¡°User¡±)(¡°UID¡±) = ¡°<% = Request(¡°UserName¡±) %>¡±
Request.Cookies(¡°User¡±)(¡°PWD¡±) = ¡°<% = Request(¡°Password¡±) %>¡±
Request.Cookies(¡°User¡±).Path = ¡°/adminstuff¡± ¡®Only applies to admin pages
...
ÏÖÔÚ£¬ÔÚÓû§´ÓadminstuffĿ¼»òÆä×ÓĿ¼ÇëÇóµÄÿ¸öÒ³ÃæÖУ¬¶¼¿ÉÒÔÕÒµ½Õâ¸öcookie¡£¼ÙÈçËü²»´æÔÚ£¬¿ÉÒÔ½«Óû§Öض¨Ïòµ½×¢²áÒ³Ãæ£º
If (Request.Cookies(¡°User¡±)(¡°UID¡±) <> ¡°alexhomer¡±) _
Or (Request.Cookies(¡°User¡±)(¡°PWD¡±) <> ¡°secret¡±) Then
Response.Redirect ¡°login.asp?UserName=¡± & Request.Cookies(¡°User¡±)(¡°UID¡±)
End If
...
ÓÉÓÚ°ÑcookieÖеÄÓû§Ãû·ÅÔÚResponse.RedirectµÄURL²éѯ×Ö·û´®ÖУ¬¼ÙÈçÔÚ¿ÚÁîÊäÈëʱ³öÏÖ´íÎóÇÒÏ£ÍûÓû§²»±ØÖØÐ¼üÈëÓû§Ãû£¬¿ÉÒÔÔÚlogin.aspÒ³ÃæÖÐʹÓÃËü£º
2£© ÐÞ¸ÄÏÖÓеÄcookie
¿ÉÒÔʹÓÃASPÐÞ¸ÄÏÖÓеÄcookie£¬µ«²»ÄÜÖ»ÐÞ¸ÄcookieÖеÄÒ»¸öÖµ¡£µ±¸üÐÂÒ»¸öÔÚResponse.Cookies¼¯ºÏÖеÄCookieʱ£¬ÏÖÓеÄÖµ½«¶ªÊ§¡£ÎÒÃÇ¿ÉÒÔÓÃÈçÏ´úÂë´´½¨Ò»¸öcookie£¬¿ÉÒÔʹÓãº
Response.Cookies(¡°VisitCount¡±)(¡°StartDate¡±) = dtmStart
Response.Cookies(¡°VisitCount¡±)(¡°LastDate¡±) = Now
Response.Cookies(¡°VisitCount¡±)(¡°Visits¡±) = CStr(intVisits)
Response.Cookies(¡°VisitCount¡±).Path = ¡°/¡± ¡®Apply to entire site
Response.Cookies(¡°VisitCount¡±).Expires = DateAdd(¡°m¡±,3,Now)
¼ÙÈçÏëÒª¸üÐÂVisitsºÍLastDateµÄÖµ£¬±ØÐëÏȲ»Ðè¸Ä±äµÄËùÓÐÖµ£¬È»ºóÖØÐ´Õû¸öµÄcookie£º
datDtart = Response.Cookies(¡°VisitCount¡±)(¡°StartDate¡±)
intVisits = Response.Cookies(¡°VisitCount¡±)(¡°Visits¡±)
Response.Cookies(¡°VisitCount¡±)(¡°StartDate¡±) = dtmStart
Response.Cookies(¡°VisitCount¡±)(¡°LastDate¡±) = Now
Response.Cookies(¡°VisitCount¡±)(¡°Visits¡±) = Cstr(intVisits)
Response.Cookies(¡°VisitCount¡±).Path = ¡°/¡±
Response.Cookies(¡°VisitCount¡±).Expires = DateADD(¡°m¡±,3,Now + 1)ÇÒ¶ÔÓÚ¼¸ºõËùÓÐµÄÆäËûResponse·½·¨ºÍÊôÐÔ£¬Ó¦¸ÃÔÚдÈëÈκÎÄÚÈÝ£¨¼´´ò¿ª±ê¼Ç»òÈκÎÎı¾»òÆäËûµÄHTML£©µ½ÏìӦ֮ǰÍê³ÉÕâ¸ö¹¤×÷¡£
¹²3Ò³: ÉÏÒ»Ò³ [1] [2] 3