我有两个域- abc.com和xyz.com。我有一个指向abc.com的xyz.com的CNAME。xyz.com设置cookie nx=true。根据这个设置,我应该能够读取abc.com上的cookie。下面是一段示例Java代码‘`enter code here
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();
}发布于 2012-04-05 08:07:51
浏览器不知道(或关心)它是CNAME、A-record还是其他什么;它只知道它是一个不同域的,并且您不能设置跨域cookie。你可能想在"How Facebook sets and uses cross-domain cookies“上看看小贴士或this SO answer。
如果您必须为域abc.foo.com和xyz.foo.com设置cookie,那就完全是另一回事了。在这种情况下,您需要做的就是设置cookie的域,使其不包含“子域”、“主机名”,以及您希望称为"abc“和"xyz”的任何名称。
有关更多信息,请查看this Wikipedia article。
https://stackoverflow.com/questions/10020987
复制相似问题