我有一个后端服务器https://b.com
和一个客户端服务器https://a.com
。我想从a.com
向b.com
发出经过验证 AJAX 请求。
在发出请求之前,用户将转到b.com
并登录。会话cookie将存储在浏览器中,并带有HttpOnly
、Secure
和SameSite=None
选项。a.com
上的fetch()
请求是从具有type="module"
的脚本发出的
const res = await fetch("https://b.com", {
headers: { "Accept": "application/json" },
credentials: "include",
});
后端返回一个带有适当CORS头的响应。即
access-control-allow-credentials: true
access-control-allow-methods: GET
access-control-allow-origin: https://a.com
尽管如此,会话cookie没有包含在fetch()
请求中,因此身份验证不起作用。
我错过了什么?
1条答案
按热度按时间q9yhzks01#
一切都在正确地进行。事实证明,Chrome阻止了所有第三方cookie。