这是一个 ASP.NET MVC 应用程序。 Cookie 不会在 Firefox 中创建。 Chrome 或 Edge 中不存在此问题。
HttpCookie myCookie = new HttpCookie("myCookie")
{
Value = "some_value",
Expires = DateTime.Now.AddYears(1)
};
HttpContext.Current?.Response.Cookies.Add(myCookie);
https
。Enhanced Tracking Protection
并在 Settings > Privacy > Cookies - Manage Exceptions
中添加了我网站的域名。更新:
我在 Ajax POST 调用的浏览器控制台中看到此错误 -
NS_BINDING_ABORTED
。
这是JS方法:
function redirectTo(obj, url) {
xhr('/api/MyController/SetCookie', JSON.stringify(obj), () => {
});
window.location.href = url;
}
根据我的理解here,Firefox 会使用任何页面重定向代码并且如果已经有另一个进程正在运行的话。
所以,我添加了延迟,现在效果很好。
function redirectTo(obj, url) {
xhr('/api/MyController/SetCookie', JSON.stringify(obj), () => {
});
//window.location.href = url;
setTimeout(function () {
window.location.href = url;
}, 500);
}