1

我有两个域 - abc.com 和 xyz.com。我有一个将 xyz.com 指向 abc.com 的 CNAME。xyz.com 设置 cookie nx=true。鉴于此设置,我应该能够读取 abc.com 上的 cookie。这是一个示例 Java 代码`在此处输入代码

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

    PrintWriter out = response.getWriter();

    Enumeration<String> h = request.getHeaders("Cookie");
    while (h.hasMoreElements()) {
        out.println("From request.getHeaders(\"Cookie\")-->" + h.nextElement().toString());

    }
        out.flush();
    out.close();

}
4

1 回答 1

4

浏览器不知道(或关心)它是 CNAME、A 记录还是其他什么;它所知道的是它是一个不同的域,你不能设置跨域 cookie。您可能想查看“ Facebook 如何设置和使用跨域 cookie ”以获取提示或此 SO 答案

如果您必须为域 abc.foo.com 和 xyz.foo.com 设置 cookie,那就完全是另一回事了。在这种情况下,您需要做的就是将 cookie 的域设置为不包括“子域”、“主机名”,以及您想要调用的“abc”和“xyz”。

有关更多信息,请查看此 Wikipedia 文章

于 2012-04-05T00:07:51.010 回答