代码之家  ›  专栏  ›  技术社区  ›  Shlomi Komemi

删除子域的cookie

  •  2
  • Shlomi Komemi  · 技术社区  · 15 年前

    我有一个域,例如:example.com 我有子域:sub.example.com

    网站上的用户共享同一会话和cookie, 但是如何从两个域中删除cookie?

    现在,我从一个域中删除,当进入子域时,他再次登录。

    非常感谢。舍洛米

    1 回复  |  直到 14 年前
        1
  •  1
  •   Patrick Desjardins    14 年前

    您可以通过将cookie的到期日期设置为已经传递的日期时间来删除cookie。对于子域也可以这样做。

    HttpCookie appCookie = new HttpCookie("AppCookie");
    appCookie.Value = "written " + DateTime.Now.ToString();
    appCookie.Expires = DateTime.Now.AddDays(-1);
    appCookie.Path = "/PathToSubDomain";
    Response.Cookies.Add(appCookie);
    

    为了澄清,路径是相对于主域的路径。您的“sub”应该是主域中的一个文件夹。 sub.example.com 实际上类似于exampleroot/sub/,所以这是您放入cookie的路径,并且您将datetime设置为旧的datetime以从此子域中删除cookie。