1

私は2つのドメインを持っています-abc.comとxyz.com。xyz.comがabc.comを指すCNAMEがあります。xyz.comはCookienx=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を設定できないことだけです。ヒントまたはこのSOの回答については、「 FacebookがクロスドメインCookieを設定および使用する方法」を確認することをお勧めします。

たとえば、ドメインabc.foo.comやxyz.foo.comにCookieを設定する必要がある場合は、まったく別のボールゲームです。その場合、あなたがする必要があるのは、あなたが「abc」と「xyz」と呼びたいものは何でも、「サブドメイン」、「ホスト名」を含まないようにクッキーのドメインを設定することです。

詳細については、このウィキペディアの記事をご覧ください。

于 2012-04-05T00:07:51.010 に答える