[英]Cookie is not sent with JavaScript on POST request
/access
我网站上的端点/access
时,我想使用由浏览器存储的安全cookie。 Cookie是在登录过程中保存的,我确保我的网站在后端的子域中运行(该子域为客户端创建cookie)。
我的后端在www.welovecoding.com
上运行,而我的Web应用程序在webapp.welovecoding.com
上webapp.welovecoding.com
。
我从后端收到的Cookie如下所示:
Set-Cookie:user_id = RLXXWNCGAyVBmnogfiE1ngFCpBRKA48YaFOGyrPypwvU3eZCA ==; 路径= /访问; Expires = Tue,29-Sep-2015 17:37:11 GMT; Domain = .welovecoding.com; HttpOnly; 安全
我现在想做的是在www.welovecoding.com/access
上的POST请求, www.welovecoding.com/access
将cookie作为身份验证凭据。 使用jQuery执行我的AJAX请求时,我正在发送withCredentials
:
$.ajax({
crossDomain: true,
type: 'POST',
url: "http://www.welovecoding.com/access",
xhrFields: {
withCredentials: true
}
}).done(function (data, textStatus, jqXHR) {
console.log("Response", data);
});
但是我仍然收到HTTP错误403,该错误表示cookie丢失。 有人知道为什么吗? 也许是因为Cookie设置了HttpOnly
和Secure
?
是的,这是因为Cookie设置为Secure
-您正在发布到http
;secure (cookie to only be transmitted over secure protocol as https)
https://developer.mozilla.org/zh-CN/docs/Web/API/document.cookie
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.