如题所述
Cookiesæ¯å±äºSession对象çä¸ç§ãä½æä¸åï¼Cookiesä¸ä¼å æå¡å¨èµæºï¼æ¯åå¨å®¢æ端å åæè ä¸ä¸ªcookieçææ¬æ件ä¸ï¼èâSessionâåä¼å ç¨æå¡å¨èµæºãæ以ï¼å°½éä¸è¦ä½¿ç¨Sessionï¼è使ç¨Cookiesãä½æ¯æ们ä¸è¬è®¤ä¸ºcookieæ¯ä¸å¯é çï¼sessionæ¯å¯é å°ï¼ä½æ¯ç®åå¾å¤èåçç«ç¹ä¹é½ä»¥æ¥cookieãææ¶å为äºè§£å³ç¦ç¨cookieåç页é¢å¤çï¼é常éç¨urléåææ¯ï¼è°ç¨sessionä¸å¤§éæç¨çæ¹æ³ä»sessionä¸è·åæ°æ®åç½®å ¥é¡µé¢ã
Cookiesä¸Sessionçåºç¨åºæ¯ï¼
Cookiesçå®å ¨æ§è½ä¸ç´æ¯ååäºè®®çãè½ç¶Cookiesæ¯ä¿åå¨æ¬æºä¸çï¼ä½æ¯å ¶ä¿¡æ¯çå®å ¨å¯è§æ§ä¸æäºæ¬å°ç¼è¾æ§ï¼å¾å¾å¯ä»¥å¼èµ·å¾å¤çå®å ¨é®é¢ãæ以Cookieså°åºè¯¥ä¸è¯¥ç¨ï¼å°åºè¯¥ææ ·ç¨ï¼å°±æäºä¸ä¸ªéè¦ç»å®çåºçº¿ã
å æ¥ççï¼ç½ç«çæææ°æ®æåªäºã
ç»ééªè¯ä¿¡æ¯ãä¸è¬éç¨Session("Logon")ï¼true or falseçå½¢å¼ã
ç¨æ·çåç§ç§äººä¿¡æ¯ï¼æ¯å¦å§åçï¼æç§æ åµä¸ï¼éè¦ä¿åå¨Sessioné
éè¦å¨é¡µé¢é´ä¼ éçå 容信æ¯ï¼æ¯å¦è°æ¥å·¥ä½éè¦å好å æ¥ãæ¯ä¸æ¥çä¿¡æ¯é½ä¿åå¨Sessionéï¼æåå¨ç»ä¸æ´æ°å°æ°æ®åºã
å½ç¶è¿ä¼æå¾å¤ï¼è¿éå举ä¸äºæ¯è¾å ¸åç
åå¦ï¼ä¸ä¸ªäººå¤å»å°ä¸æ³ç¢°Sessionï¼å 为ä»è®¤ä¸ºï¼å¦æç¨æ·ä¸ä¸ä¸å°å¿å ³éäºæµè§å¨ï¼é£ä¹ä¹åä¿åçæ°æ®å°±å ¨é¨ä¸¢å¤±äºãæ以ï¼ä»åºäºå¥½æï¼å³å®æè¿äºç¨Sessionçå°æ¹ï¼é½æ¹æç¨Cookiesæ¥åå¨ï¼è¿å®å ¨æ¯å¯è¡çï¼ä¸åºæ¬æä½åç¨Sessionä¸æ¨¡ä¸æ ·ãé£ä¹ï¼ä¸é¢å°±é对以ä¸ç3ä¸ªå ¸åä¾åï¼åä¸ä¸ªåæ
å¾æ¾ç¶ï¼åªè¦æ个ææéæ³å ¥ä¾µè ï¼ç¥é该ç½ç«éªè¯ç»éä¿¡æ¯çSessionåéæ¯ä»ä¹ï¼é£ä¹ä»å°±å¯ä»¥äºå ç¼è¾å¥½è¯¥Cookiesï¼æ¾å ¥å°Cookiesç®å½ä¸ï¼è¿æ ·å°±å¯ä»¥é¡ºå©éè¿éªè¯äºãè¿æ¯ä¸æ¯å¾å¯æï¼
Cookieså®å ¨æ¯å¯è§çï¼å³ä½¿ç¨åºå设å®äºCookiesççåå¨æï¼æ¯å¦åªå¨ç¨æ·ä¼è¯æææå ææï¼ï¼å®ä¹æ¯ä¸å®å ¨çãå设ï¼ç¨æ·å¿äºå ³æµè§å¨ æè ä¸ä¸ªæ¶æè 硬æ§æç¨æ·ç»ææï¼é£ç¨æ·çæ失å°æ¯å·¨å¤§çã
è¿ç¹å¦ä¸ç¹ä¸æ ·ï¼å¾å®¹æ被å®äººçªåéè¦çç§äººä¿¡æ¯ãä½ï¼å ¶è¿æä¸ä¸ªé®é¢æå¨æ¯ï¼å¯è½è¿äºæ°æ®ä¿¡æ¯é太大ï¼è使å¾Cookiesçæ件大å°å§å¢ãè¿å¯ä¸æ¯ç¨æ·å¸ææçå°çã
æ¾ç¶ï¼Cookies并ä¸æ¯é£ä¹ä¸å好åçå°ç饼ãä½ï¼Cookiesçåå¨ï¼å½ç¶æå ¶åå ãå®ç»äºç¨åºåæ´å¤åæ¥ç¼ç¨æè½ç空é´ãæ以ï¼ä½¿ç¨Cookiesæ¹æ个åºçº¿ãè¿ä¸ªåºçº¿ä¸è¬æ¥è¯´ï¼éµå¾ªä»¥ä¸ååã
ä¸è¦ä¿åç§äººä¿¡æ¯ã
ä»»ä½éè¦æ°æ®ï¼æ好éè¿å å¯å½¢å¼æ¥ä¿åæ°æ®ï¼æç®åçå¯ä»¥ç¨URLEncodeï¼å½ç¶ä¹å¯ä»¥ç¨å®åçå¯éå å¯æ¹å¼ï¼éæ¾çæ¯ï¼æ好ä¸è¦ç¨md5æ¥å å¯ï¼ã
æ¯å¦ä¿åç»éä¿¡æ¯ï¼éæç¨æ·èªè¡éæ©ã
é¿äº10Kçæ°æ®ï¼ä¸è¦ç¨å°Cookiesã
ä¹ä¸è¦ç¨Cookiesæ¥ç©ç¹è®©å®¢æ·æåçå°æ¸¸æã
ä¸è¿cookieæå ¸åçåºç¨æ¯ï¼
ï¼ä¸ï¼ï¼å¤æç¨æ·æ¯å¦ç»éè¿ç½ç«ï¼ä»¥ä¾¿ä¸æ¬¡ç»å½æ¶è½å¤ç´æ¥ç»å½ãå¦ææ们å é¤cookieï¼åæ¯æ¬¡ç»å½å¿ é¡»ä»æ°å¡«åç»å½çç¸å ³ä¿¡æ¯ã
ï¼äºï¼ï¼å¦ä¸ä¸ªéè¦çåºç¨æ¯âè´ç©è½¦âä¸ç±»çå¤çå设计ãç¨æ·å¯è½å¨ä¸æ®µæ¶é´å å¨åä¸å®¶ç½ç«çä¸å页é¢éæ©ä¸åçååï¼å¯ä»¥å°è¿äºä¿¡æ¯é½åå ¥cookieï¼å¨æåä»æ¬¾æ¶ä»cookieä¸æåè¿äºä¿¡æ¯ï¼å½ç¶è¿éé¢æäºå®å ¨åæ§è½é®é¢éè¦æ们èèäºã
cookie和session的区别如下:
1、session保存在服务器,客户端不知道其中的信息;cookie保存在客户端,服务器能够知道其中的信息。
2、session中保存的是对象,cookie中保存的是字符串。
3、session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到。而cookie中如果设置了路径参数,那么同一个网站中不同路径下的cookie互相是访问不到的。
4、session需要借助cookie才能正常工作。如果客户端完全禁止cookie,session将失效。
应用场景区别如下:
1.session就是一种保存上下文信息的机制,它是针对每一个用户的,变量的值保存在服务器端,通过SessionID来区分不同的客户,session是以cookie或URL重写为基础的,默认使用cookie来实现,系统会创造一个名为JSESSIONID的输出cookie。
2.persistent cookies和session cookie的区别了,网上那些关于两者安全性的讨论也就一目了然了,session cookie针对某一次会话而言,会话结束session cookie也就随着消失了,而persistent cookie只是存在于客户端硬盘上的一段文本(通常是加密的)。
3.通常session cookie是不能跨窗口使用的,当新开了一个浏览器窗口进入相同页面时,系统会赋予一个新的sessionid,这样信息共享的目的就达不到了,可以先把sessionid保存在persistent cookie中,然后在新窗口中读出来,就可以得到上一个窗口SessionID了。
Cookie,有时也用其复数形式 Cookies,指某些网站为了辨别用户身份、进行 session 跟踪而储存在用户本地终端上的数据(通常经过加密)。定义于 RFC2109 和 2965 中的都已废弃,最新取代的规范是 RFC6265。(可以叫做浏览器缓存)
Session:在计算机中,尤其是在网络应用中,称为“会话控制”。Session 对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在下去。
当用户请求来自应用程序的 Web 页时,如果该用户还没有会话,则 Web 服务器将自动创建一个 Session 对象。当会话过期或被放弃后,服务器将终止该会话。Session 对象最常见的一个用法就是存储用户的首选项。
本回答被网友采纳1、session保存在服务器,客户端不知道其中的信息;cookie保存在客户端,服务器能够知道其中的信息。
2、session中保存的是对象,cookie中保存的是字符串。
3、session不能区分路径,同一个用户在访问一个网站期间,所有的session在任何一个地方都可以访问到。而cookie中如果设置了路径参数,那么同一个网站中不同路径下的cookie互相是访问不到的。
4、session需要借助cookie才能正常<nobr oncontextmenu="return false;" onmousemove="kwM(3);" id="key3" onmouseover="kwE(event,3, this);" style="COLOR: #6600ff; BORDER-BOTTOM: 0px dotted; BACKGROUND-COLOR: transparent; TEXT-DECORATION: underline" onclick="return kwC();" onmouseout="kwL(event, this);" target="_blank">工作</nobr>。如果客户端完全禁止cookie,session将失效。
应用场景如下:
1.session就是一种保存上下文信息的机制,它是针对每一个用户的,变量的值保存在服务器端,通过SessionID来区分不同的客户,session是以cookie或URL重写为基础的,默认使用cookie来实现,系统会创造一个名为JSESSIONID的输出cookie,
2.persistent cookies和session cookie的区别了,网上那些关于两者安全性的讨论也就一目了然了,session cookie针对某一次会话而言,会话结束session cookie也就随着消失了,而persistent cookie只是存在于客户端硬盘上的一段文本(通常是加密的),而且可能会遭到cookie欺骗以及针对cookie的跨站脚本攻击,自然不如 session cookie安全了。
3.通常session cookie是不能跨窗口使用的,当新开了一个浏览器窗口进入相同页面时,系统会赋予一个新的sessionid,这样信息共享的目的就达不到了,可以先把sessionid保存在persistent cookie中,然后在新窗口中读出来,就可以得到上一个窗口SessionID了,这样通过session cookie和persistent cookie的结合就实现了跨窗口的session tracking(会话跟踪)。
cookies:是针对每一个网站的信息,每一个网站只对应一个,其它网站不能访问,这个文件是保存在客户端的,每次你打相应网站,浏览器会查找这个网站的cookies,如果有就会将这个文件起发送出去。cookies文件的内容大致包函这些信息如用户名,密码,设置等。
session: 是针对每一个用户的,只有客户机访问,程序就会为这个客户新增一个session。session里主要保存的是用户的登录信息,操作信息等。这个session在用户访问结束后会被自动消失(如果超时也会)。
session存于服务器端。
服务器鉴别session需要至少从客户端传来一个session_id,session_id通常存于cookie中,或是url(很少用url,主要涉及安全性和SEO的影响)所以在工程上session离了cookie基本没法用,但是cookie可以单独使用,不过cookies是明文存储,安全性很低,只使用cookie的话盗取了cookie基本就获取了用户所有权限。
另外浏览器每次访问网页都会带上cookie,如果cookie存储内容过多,会严重占用服务器端带宽,影响性能。
所以如果你是简单或且安全不敏感的应用,可以只使用cookie。
否则还是需要cookie配合session。
不过现有语言和框架基本都可以让你简单地使用session,而无需考虑session和cookie的关系。