1

希望这很容易回答。

使用 XHR2 中的凭据请求,发送哪些 cookie?

我一直在关注MDN 关于 credentialed requests 的文章,它显示 cookiepageAccess=2是随请求一起发送的。但是,它没有解释该 cookie 的来源,以及为什么专门发送该 cookie。是否只是页面设置的所有 cookie 都在任何凭据请求中发送?

4

1 回答 1

4

来自CORS上的 HTML5 Rocks 页面:

.withCredentials属性将在请求中包含来自远程域的任何 cookie,它还将设置来自远程域的任何 cookie。

我假设“任何 cookie”的意思是“所有 cookie”(可能受 cookie 上的 HTTPS-only 标志的影响),因为没有使用 XHR2 指定 cookie 的机制。

发送的 cookie 是由远程域设置的 cookie :如果foo.com向 发送一个请求凭据请求bar.com,则发送设置的任何 cookie bar.com。实际上,假设facebook.com有一个 CORS 感知 API,需要您登录才能使用。我之前在浏览器会话中登录了 Facebook,但现在我正在浏览foo.com,它将代表我使用 Facebook 的 API。要求浏览器向我的所有cookiefoo.com发送跨域请求,以便 Facebook 知道我是谁,并且我已经向 Facebook 进行了身份验证。facebook.com facebook.com

于 2012-12-19T14:11:30.740 回答