允许从不同来源的子域使用 cookie

Allow cookies to be used from different origin subdomain

如果我浏览器地址栏上的 url 是 dev.example.com 并且如果我向 sub1.dev.example.com 发出请求,它会使用具有以下属性的 set-cookie 进行响应:

虽然仍在 dev.example.com,但如果我调用 sub2.dev.example.com,cookie 会在请求中发送,这正是我所期望的。

但是,如果我浏览器地址栏上的 url 是 sub3.dev.example.com 而我调用 sub2.dev.example.com,则不会发送 cookie。

(在 chrome 92 和 firefox 90 上验证)

有没有什么方法可以在源 sub3.dev.example.com 上向 sub2.dev.example.com 发送 cookie,其中特定 cookie 是在 sub1.dev.example.com 的请求响应中设置的,而在源 dev.example.com ?

或者甚至更好,允许将 cookie 发送到 **.dev.example.com 的所有子域,同时在 **.dev.example.com 的任何原始子域上独立于最初请求或设置 cookie 的来源。

经过更多测试,我似乎忘记在我的请求中添加“withCredentials”标志。

对于偶然发现此问题的任何人,如果您使用的是 axios,请确保在调用时将“withCredentials”设置为 true,如果您使用的是 fetch,请确保将“credentials: 'include'”设置为 true。