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
我正在从域 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