【发布时间】:2010-12-02 17:54:09
【问题描述】:
在我的网络服务器上,我有一个包含小程序标签的 HTML 文件:
<html>
<head/>
<body>
<applet code="Hello.class" width="100" height="100" />
</body>
</html>
我在与 HTML 文件相同的目录中有一个名为 Hello.class 的 Java 类文件。
这两个文件都在主机名如下所示的 Web 服务器 (IIS 6) 上运行:
bart.simpson.springfield.com
我的浏览器中有两个 cookie:
- CookieA - 范围为 springfield.com
- CookieB - 范围为 simpson.springfield.com
当服务器请求 HTML 文件时,Fiddler 显示上述两个 cookie 都随请求一起发送。
当从服务器请求 Java 类文件时,Fiddler 显示只发送了 CookieA(范围为 springfield.com)。
我需要两个 cookie 发送到服务器。有没有办法做到这一点?
我看到这种行为是 Firefox 3.5.2 和 IE 7。
我试图找到发送 cookie 的规范,但自 Java 1.3 以来一无所获。
谢谢!
【问题讨论】:
-
我实际上对实现一无所知,但如果它在内部使用
java.net.URL,我想知道springfield.com和simpson.springfield.com是否解析到相同的IP 地址。 -
在我的例子中,springfield.com 和 simpson.springfield.com 有不同的 IP 地址。我认为浏览器发送到服务器的 cookie 与 IP 地址无关,但与 cookie 的域名有关。
-
我对 RFC 的 cookie (faqs.org/rfcs/rfc2965.html) 进行了一些研究,就我理解的法律术语而言,这两个 cookie 都应该发送,因为它们都与域名匹配。
-
澄清一下,我的问题与域名中有多少部分无关。 simpson.springfield.com 的所有 cookie 都带有 HttpOnly 标记,而 springfield.com 的所有 cookie 都没有 HttpOnly 标记,这只是一个巧合。