Javascript删除android web浏览器上的cookie

时间:2010-12-08 20:14:03

标签: javascript android cookies

什么是在Android网络浏览器上删除cookie的javascript。将cookie的过期日期设置为过去日期的常用方法在Android Web浏览器中不起作用。

例如以下代码适用于桌面Web浏览器和移动Safari,但在Android Web浏览器中不起作用。

document.cookie = 'cookiename=cookievalue; expires=Thu, 2 Aug 2001 20:47:11 UTC; path=/';

4 个答案:

答案 0 :(得分:1)

我见过浏览器(实际上是在电视机中,但不确定它是哪一个),它不接受'expires ='字段(带有绝对日期),但与'max-age ='配合得很好(从现在起的秒数的实时时间)。所以也许尝试通过以下方式删除cookie:

document.cookie = 'cookiename=; max-age=0; path=/';

答案 1 :(得分:1)

您是否尝试过在Cookie设置行中包含域名?我记得在某些情况下,您必须非常明确地使用域和路径匹配(或兼容)当前文档位置才能删除cookie:

document.cookie='cookiename=cookievalue; path=/; domain=current-domain; expires=Thu, 01 Jan 1970 00:00:01 GMT';

答案 2 :(得分:0)

对我有用

document.cookie = yourCookieName + '=' + // NO value here 
    ';expires=Thu, 01-Jan-1970 00:00:01 GMT';

如果在设定的时间使用路径和/或域,请添加em

document.cookie = yourCookieName + '=' + // NO value here
    ';path=' + yourCookiePath +
    ';domain=' + yourCookieDomain +
    ';expires=Thu, 01-Jan-1970 00:00:01 GMT';

答案 3 :(得分:-1)

虽然这是一种迂回的方式,但是创建并实例化将从网页Javascript调用的JavascriptInterface。使用

将Javascript界面​​设置为Webview
webSettings.setJavascriptEnabled(true);

webView.addJavascriptInterface(new JavaScriptInterfaceImplementation(), INTERFACE_NAME);

然后在您的网页上调用

javascript:INTERFACE_NAME.yourSessionClearingMethod();

应该包含

CookieManager cookieManager = CookieManager.getInstance();        
cookieManager.removeAllCookie(); // or cookieManager.removeSessionCookie();

清除不需要的cookie。