【问题标题】:Unable to delete (set to expire) cookies on localhost无法删除(设置为过期)本地主机上的 cookie
【发布时间】: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?或者我可以进行一些配置更改吗?

【问题讨论】:

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

标签: javascript cookies localhost


【解决方案1】:

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

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

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

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

【讨论】:

    猜你喜欢
    • 2015-04-19
    • 2019-08-20
    • 1970-01-01
    • 2019-06-16
    • 2011-09-05
    • 1970-01-01
    • 2015-08-05
    • 1970-01-01
    • 2022-09-24
    相关资源
    最近更新 更多