我需要删除一个cookie,然后进行重定向。但是,在处理重定向之前,cookie不会被删除。问题是如果在执行重定向时cookie仍然存在,则拦截重定向并将其发送到除预期之外的页面。 (很奇怪,我知道;长篇故事)
是否有可能欺骗浏览器并在重定向之前强制删除cookie?
jQuery('div#panelD').click(function(){
document.cookie = 'sharedsession=; expires=Thu, 01 Jan 1970 00:00:01 GMT; Domain=.example.com; path=/';
window.location.href = "www.example.com/x";
});
答案 0 :(得分:0)
我发现如果我对任何事情执行AJAX调用,它就有资格刷新以删除cookie。
var fakeAjax = new XMLHttpRequest();
var anything = fakeAjax.responseText;
fakeAjax.open("GET","ajax_info.txt",false); // file doesn't actually exist
fakeAjax.send();
请注意打开行中的“false”。异步必须设置为false(或其他一些延迟),以便有时间让新信息返回并删除cookie。
UPDATE: IE不喜欢从不存在的文件中请求responseText,因此只需完全删除该行。无论是否使用它,其他浏览器似乎都没问题。