Jquery Ajax 请求不保存 cookie

Jquery Ajax request not saving cookies

我正在从域 1 向域 2 发送带有 jquery 的 ajax 请求。

代码如下:

let settings = {
        url: "https://domain2.com",
        method: "POST",
        headers: {
            "Access-Control-Allow-Credentials": true,
            "Access-Control-Allow-Origin": "https://domain1.com",
        },
        contentType: "application/json",
        data: JSON.stringify(data),
        xhrFields: {
            withCredentials: true
        }
    };
    jQuery.ajax(settings)
    .then( res => {
       // Do something with result
    );

但是在我检查浏览器 cookie 时发出请求后,响应 cookie 不存在。 我还在网络选项卡中检查了域 2 发送 cookie。

有人知道问题出在哪里吗?

在 ajax 设置中使用:

let settings = {
   url: "https://domain2.com",
   crossDomain: true,
   ... your settings
}

我发现了问题,是我的问题。

以上所有设置都是正确的,问题是关于设置 cookie 的域 2

具有属性 SameSite = strict,因此 domian1 无法设置这些 cookie。

更多信息:SameSite Cookies