我花了至少五个小时试图通过控制台更改网站的cookie(在我的情况下为Facebook)。
看来,如果我在开发工具中清空c_user
,则会注销。但是,当我尝试在控制台中实现同一目标时,什么也没发生。我尝试了以下两种方法:
document.cookie[0]="c_user=0";
document.cookie.replace("c_user", "94029r23r");
答案 0 :(得分:1)
您没有正确执行JS。要理解的重要一点是,document.cookie
返回一个包含所有cookie名称和值的字符串。让我们看看您的代码对该字符串有什么作用。
document.cookie[0]="c_user=0";
将字符串的元素设为零将返回第一个字符。在这种情况下,您将获得第一个cookie名称的第一个字符。将字符设置为字符串只是胡说八道,它什么也不做,也不会更改原始字符串-document.cookie
。
document.cookie.replace("c_user", "94029r23r");
我假设您期望它替换cookie的名称?唯一的问题是JS函数replace
不会更改输入。它返回一份副本,上面有替换内容。同样,您不必修改document.cookie
。
有关正确的操作方法,请参见this question。或者,如果您想要快速又脏的东西来去除价值,请尝试以下操作:
document.cookie = document.cookie.replace("[the session id]", "");