如何删除会话Cookie?
如何通过JavaScriptdynamic地删除会话cookie,而无需手动重启浏览器?
我在某处读到会话cookie保存在浏览器内存中,当浏览器closures时会被删除。
// sessionFooCookie is session cookie // this code does not delete the cookie while the browser is still on jQuery.cookie('sessionFooCookie', null);
谢谢。
更多信息:上面的代码片段是一个JavaScript代码片段,使用jQuery和它的jQuery.cookie插件。
会话cookie只是一个没有过期date的普通cookie。 这些由浏览器处理,直到窗口closures或程序退出。
但是,如果cookie是httpOnly
cookie(设置了httpOnly
参数的cookie),则不能从HTTP之外读取,更改或删除它。
确保提供与设置时完全相同的path,即
设置:
$.cookie('foo','bar', {path: '/'});
删除:
$.cookie('foo', null, {path: '/'});
注意
$.cookie('foo', null);
将无法工作,因为它实际上不是相同的cookie。
希望有所帮助。 散列中的其他选项也是如此
有一些已知的问题IE和Opera不会删除会话cookie时,将过期date设置为过去(这是jQuery cookie插件)
这在Safari和Mozilla / FireFox中工作正常。
你可以通过设置到期date为昨天。
我在JavaScript中的新的关于cookie的post可以帮助你。
http://www.markusnordhaus.de/2012/01/20/using-cookies-in-javascript-part-1/
这需要在发布cookie的服务器端完成。
删除一个jQuery cookie :
$(function() { var COOKIE_NAME = 'test_cookie'; var options = { path: '/', expires: 10 }; $.cookie(COOKIE_NAME, 'test', options); // sets the cookie console.log( $.cookie( COOKIE_NAME)); // check the value // returns test $.cookie(COOKIE_NAME, null, options); // deletes the cookie console.log( $.cookie( COOKIE_NAME)); // check the value // returns null });