无法删除(设置为过期)本地主机上的 cookie

Posted

技术标签:

【中文标题】无法删除(设置为过期)本地主机上的 cookie【英文标题】:Unable to delete (set to expire) cookies on localhost 【发布时间】:2018-05-13 11:27:30 【问题描述】:

我正在使用以下函数来创建和删除 cookie。这在过去效果很好,但最近我开始通过 localhost 进行调试,我注意到 deleteCookie 函数不再工作。

function setCookie(cname, cvalue, exsecs) 
    let expires = "";
    if (exsecs) 
        var d = new Date();
        d.setTime(d.getTime() + (exsecs * 1000));
        expires = "expires="+ d.toUTCString();
     else 
        expires = "expires=Fri, 31 Dec 9999 23:59:59 GMT"
    
    document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/";


function deleteCookie( name ) 
    document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';

如您所见,它非常简单。有没有更好的方法来“删除”在本地工作的 cookie?或者我可以进行一些配置更改吗?

【问题讨论】:

非常相似的东西 -- ***.com/a/23995984/1745073 看起来可行。但由于这不是那里的具体问题(从未提及本地主机),我认为这可能应该保持开放。想法? 【参考方案1】:

将此作为可能的答案,直到通过相关解释得到更可靠的答案:

function deleteCookie(name) 
  document.cookie = name +'=; Path=/; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';

指定 Path 属性似乎适用于遇到类似问题的其他人。

Source(虽然没有提到它是特定于本地主机的)

【讨论】:

以上是关于无法删除(设置为过期)本地主机上的 cookie的主要内容,如果未能解决你的问题,请参考以下文章

本地主机上具有显式域的 Cookie

本地主机上具有显式域的 Cookie

Django设置Cookie的过期时间expires, max_age的格式

MVC3 不接受 cookie

PHP Cookies 不会设置

cookie 在本地主机上工作吗? [复制]