Cookies深子域

Cookies深子域,cookies,Cookies,我已经阅读了[1][2]和[3],想了解一些关于cookies和子域的信息 如果我将cookie的域设置为“.live.example.com” api.live.example.com是否可以使用cookie 我相信答案是肯定的 cookie是否可用于uat.example.com 我相信答案是否定的 将设置其他Cookie属性,这些属性应该是无关的,但我会提到,如果有人认为它们是相关的: httpOnly-启用 安全启用 过期-会话结束 在什么情况下cookie不会发送到api.live.e

我已经阅读了[1][2]和[3],想了解一些关于cookies和子域的信息

如果我将cookie的域设置为“.live.example.com”

api.live.example.com是否可以使用cookie

我相信答案是肯定的

cookie是否可用于uat.example.com

我相信答案是否定的

将设置其他Cookie属性,这些属性应该是无关的,但我会提到,如果有人认为它们是相关的:

httpOnly-启用

安全启用

过期-会话结束

在什么情况下cookie不会发送到api.live.example.com(站点具有有效的SSL证书,如果有人在设置安全标志时建议站点不处于SSL模式,则相关)

我为什么要问第二个问题

我以前将cookie设置为“.example.com”。cookie没有通过XMLHTTPRequest(从www.example.com加载的js)发送到api.example.com,而是打开另一个浏览器选项卡并向api.example.com发出GET请求,cookie被发送。因此,browser正在做一些决定

我已经读过什么了吗

是的,我已经复习了关于stackoverflow的以下问题,并阅读了RFC6265第5.1.3节和第5.2.3节。我没有读到任何东西表明这种方法行不通:

[1] 现有stackoverflow问题-Cookies子域

[2] RFC状态管理-域匹配

[3] RFC状态管理-域属性

我可以确认我已经创建了一个测试用例来回答这些问题:

api.live.example.com是否可以使用cookie

答案是肯定的

cookie是否可用于uat.example.com

答案是否定的

正如@CBroe所指出的,对于XMLHTTPRequests,withCredentials标志必须设置为true[1]

如果有人问这个问题,“www.example.com”呢

该cookie是否可访问www.example.com

希望从前面的问题/答案中可以明显看出这一点

不,www.example.com将不提供cookie

[1] XMLHttpRequestwithCredentials


“cookie没有通过XMLHTTPRequest发送到api.example.com”-那么您可能没有指定发送凭据所需的请求属性,例如带有跨域请求的cookie…”那么您可能没有指定发送凭据所需的请求属性你能说得更具体些吗?@CBroe你指的是:是的,我是。您需要明确指定要通过跨域请求发送此类凭据。关于前两个“是/否”问题,您的回答是正确的。