Java Cookie域包含点?

Java Cookie域包含点?,java,javascript,html,gwt,cookies,Java,Javascript,Html,Gwt,Cookies,我使用GWT的Cookies类生成Cookies 当我使用下面的 Cookies.setCookie(LOGIN_COOKIE_NAME, value, expires); 一切正常。在浏览器中检查cookie将按其应有的方式进入mydomay.com 但是,当我使用以下内容时: String path = "/" String domain = "mydomain.com" Cookies.setCookie(LOGIN_COOKIE_NAME, value, expires, domain

我使用GWT的Cookies类生成Cookies

当我使用下面的

Cookies.setCookie(LOGIN_COOKIE_NAME, value, expires);
一切正常。在浏览器中检查cookie将按其应有的方式进入mydomay.com

但是,当我使用以下内容时:

String path = "/"
String domain = "mydomain.com"
Cookies.setCookie(LOGIN_COOKIE_NAME, value, expires, domain, path, secure);
在浏览器中检查域时,我可以看到域前的点:

.mydomain.com
这个圆点是从哪里来的


事实证明,如果给出了.mydomain.com,Cookies.removeCookie(LOGIN\u COOKIE\u NAME)对我不起作用。为什么前面有点时无法删除此cookie?

点表示cookie也适用于
mydomain.com
的任何子域,例如
example.mydomain.com
。可以将其视为
*.mydomain.com
,其中*是一个通配符


您可以在这里找到一个非常类似的问题:

如果您在创建域时传递了域,那么在清除cookie时,您需要传递相同的域(例如?);然而,这里没有API允许这样做

这听起来很像一个bug,报告如下:

在服务器上为给定URL、域名和路径设置cookie 作为返回结果的一部分在cookie上显式设置。 Cookies.remove(名称)和Cookies.remove(名称、路径)不会删除 FF3.0.14上的cookie。(基于路径的删除在IE 6上不起作用)


该问题中建议的解决方法是修补GWT
Cookies
类。

此处的点表示cookie也适用于子域,如abcd.mydomain.com。这非常类似于说你可以在你的域中添加一个完全不同的网站,比如说注册段在不同的子域中分开,所以通常可以用通配符替换,比如*.mydomain.com。这被称为Cookie点规则。有关相同的信息,请参阅。您也可以让同一个cookie引用多个令牌值

您必须将过期日期设置为现在,以便cookie立即过期

Cookies.setCookie(COOKIE_NAME, "", new Date(), domain, path, false);

@确认这可能是另一个已在此处解决的问题:当cookie具有域:.mydomain.com时,我尝试了cookie.removeCookie(“cookieName”,“/”),但仍然无法删除cookie。这一定是因为域前面的点。有什么想法吗?@confile对不起,我不知道这里可能有什么问题。您能给出一个完整的代码示例来重现意外行为吗?我如何修复我的问题我想要String domain=“mydomain.com”?我如何修复我的问题我想要String domain=“mydomain.com”?我如何修复我的问题我想要String domain=“mydomain.com”?