会话和cookie是一回事吗?

Sha*_*lni 12 asp.net

由于会话和cookie都用于存储临时数据,它们之间有什么区别?

Rav*_*kar 6

至于可能的知识:

如果将变量设置为"cookies",则用户无需在每次进入社区时登录.

cookie将保留在用户浏览器中,直到用户删除为止.

但是Sessions被广泛使用,因为如果用户浏览器安全设置设置得很高,您的cookie可能会被阻止.

如果将变量设置为"sessions",则将使用浏览器会话跟踪用户活动,并且每次重新打开浏览器时,您的用户都必须登录.此外,如果您使用"sessions"变量,则需要保护"sessions"目录,方法是将其放在Web根目录上,或者请求您的Web主机使其成为不可浏览的目录.

关键区别在于cookie存储在硬盘中,而会话不存储在硬盘中.会话基本上就像令牌,它们是在身份验证时生成的.只要打开浏览器,就可以使用会话.

希望以下链接将进一步澄清您的疑虑

http://wiki.answers.com/Q/What_is_the_difference_between_session_and_cookies http://www.allinterview.com/showanswers/74177.html


And*_*ose 5

Cookie作为文件系统上的小文本文件(持久性cookie)或浏览器内存(非持久性cookie)存储在客户端上,并传递给服务器并随每个请求和响应返回给客户端.只要到期日期未过,持久性cookie仍将在浏览器会话之间可用.浏览器关闭后,非持久性cookie将丢失.
会话存储在内存中的服务器上.Cookie通常用作保留请求之间的用户会话引用的方式,但是如果在客户端浏览器上禁用cookie,也可以使用查询字符串参数来完成此操作.


Jef*_*nal 5

Cookie将用户的数据存储在他们的计算机上.

会话实现将用户的临时数据存储在服务器(或多个服务器上,具体取决于配置).


yfe*_*lum 5

在每个HTTP响应中,服务器都有机会添加标头Set-Cookie: {cookie-name}={cookie-data}; {cookie-options}.

浏览器将在每个后续HTTP请求中(或由选项指定)添加标头Cookie: {cookie-name}={cookie-data}.

请求#1:

POST /auth/login HTTP/1.1
Host: www.example.com

username=Justice&password=pass1234
Run Code Online (Sandbox Code Playgroud)

回复#1:

HTTP/1.1 307 Temporary Redirect
Set-Cookie: user_id=928
Location: http://www.example.com/dashboard
Run Code Online (Sandbox Code Playgroud)

请求#2:

GET /dashboard HTTP/1.1
Host: www.example.com
Cookie: user_id=928
Run Code Online (Sandbox Code Playgroud)

回应#2:

HTTP/1.1 200 OK
Content-Type: text/html

<html>
  <head>...</head>
  <body>...</body>
</html>
Run Code Online (Sandbox Code Playgroud)

所有未来的请求也将包括Cookie标题.