为什么会话取决于浏览器cookie

时间:2013-08-29 10:51:11

标签: web-applications cookies session-variables

Cookie是客户端,因为会话是服务器端,但如果我们在浏览器上禁用cookie,会话无法正常运行。

这两者如何在网络应用程序中相关。

2 个答案:

答案 0 :(得分:2)

服务器只能看到网页的传入请求。服务器处理此请求并将响应发送回客户端。客户端和服务器之间没有持久连接。因此,服务器无法判断这是返回的客户端还是全新的客户端。

要启用会话,您需要使用唯一的会话ID向客户端发送值。在每个后续请求中,客户端将此id发送回服务器。这样,服务器可以使用id为该特定客户端加载会话状态。

该值通常以cookie形式发送。浏览器将cookie附加到每个请求,这样服务器就知道谁在调用。您还可以将会话密钥存储在URL的查询字符串中,但这不是默认值。

答案 1 :(得分:0)

您的网络应用程序如何知道当前请求是否是新会话?它最有一些指示,所以它使用cookie来持久化session-id。

顺便说一下,您可以在Cookieless模式下工作,其中会话ID通过URL查询参数进行处理。