我在这里和那里做了一点网络编程,但我从来没有完全理解这个词的含义Session
。
我在这里和那里搜索了一下,阅读了维基百科的文章,但永远无法完全理解它的含义。
那么,什么是会话?
Session 是一种在多个页面和请求中持久保存您的信息的方式。当您访问任何网站的登录页面并提供您的用户名和密码时,您无需在后续页面再次提供它们。
这是通过附加一个会话 id 来完成的,该 id 对您的请求是唯一的,并在您浏览页面时来回发送。
会话 ID 可以存储在 cookie(系统上的文件)中、作为查询字符串的一部分的 URL 或数据库中
会话是为您网站的特定访问者存储数据的地方。
您可以将数据存储在该访问者的下一页请求中也可用。如果某些数据存储在“会话中”,则意味着数据存储在某个地方(可能在服务器的数据库或文件中),然后服务器可以使用这些数据构建网页。
访问者将收到一个临时 cookie,其中包含一个会话 ID,一个标识符,用于将该访问者与存储在 Web 服务器上的会话数据相关联。
会话 ID 随每个请求一起发送到服务器,服务器可以查找存储的会话数据(然后可用于构建网页)。
这是通过 HTTP 等固有的无状态协议保持状态的概念。
例如,如果您想跟踪登录的用户,以及可能与该用户相关的一些数据,您可以每次在服务器和客户端之间发送该数据,这当然是非常不安全的。或者您可以将它保存在服务器上的会话存储中,例如文件或数据库,并且只需在客户端和服务器之间交换存储位置的标识符。如今,这通常通过 cookie 完成,但也可以是 URL 中的参数。
为了简单起见:
如果您第一次访问该站点,服务器会为客户端提供一个标识符。有了这个,服务器可以在从客户端到服务器的多个请求中识别客户端。该标识符在预设时间后被删除。
此标识符和标识符有效的时间范围的组合称为会话。
希望有帮助。:-)
会话:用户和服务器之间的交互,具有与之关联的 ID。这样服务器就可以根据用户的请求精确定位和服务用户。Cookie 主要用于存储会话信息,因为默认情况下 HTTP 是无状态的。