【发布时间】:2015-12-11 02:05:01
【问题描述】:
http://i.stack.imgur.com/4XK7k.png
我使用 cookie 登录,但有时它不匹配。 cookie 是否可用于每个请求的同一域?
【问题讨论】:
标签: cookies
http://i.stack.imgur.com/4XK7k.png
我使用 cookie 登录,但有时它不匹配。 cookie 是否可用于每个请求的同一域?
【问题讨论】:
标签: cookies
请求 cookie 是在客户端创建的 cookie。它们在每个请求 matching with cookie domain(ie. .com,.org,subdomain.com) and path (ie. /login, /questions) and protocol(HTTP, HTTPS) 中的 Cookie HTTP 标头中发送到服务器。所以stackoverflow不会收到facebook的cookies。
服务器可以在收到 cookie 时选择做某事,也可以选择忽略它们。此类 cookie 可用于存储购物车类型数据。
响应 cookie 是在服务器端创建的 cookie。这些在 Set-Cookie HTTP 标头中从服务器发送到客户端。 HTTP 客户端(如浏览器)应读取此标头并创建包含在此标头值中的 cookie。对服务器的每个后续请求都将使用这些 cookie(匹配域/路径/协议)进行。由于服务器已经知道这个 cookie,它可以从它的 cookie 存储中匹配并检查这个请求是否来自同一主机,从而为请求提供分配状态。这种 cookie 可用于验证用户会话。
响应 cookie 在服务器的第一次响应中发送一次,客户端 cookie 在每个请求中发送到服务器。
查看使用 cookie 的示例服务器响应
HTTP/1.0 200 OK
Content-type: text/html
Set-Cookie: theme=light
Set-Cookie: sessionToken=abc123; Expires=Wed, 09 Jun 2021 10:18:14 GMT
来自客户端的后续请求如下所示
GET /spec.html HTTP/1.1
Host: www.example.org
Cookie: theme=light; sessionToken=abc123
【讨论】:
Request Cookie = 您随请求一起发送的 Cookie。Response Cookies = Http 标头名称 Set-Cookie,它基本上包含未来请求的“请求 Cookie”值。
【讨论】: