会社内でキャンペーン用のページ/フォームを開発しています。ただし、最初のステップは、その人物がログインしているかどうかを確認することです。これは、ログインすると設定されるCookie(CUSTOMER)に対して簡単に確認されます。
ただし、1)同じドメイン上ではなくローカルで開発しているため、Cookieが表示されません。2)最終的なキャンペーンが実際のドメインに存在する場合とそうでない場合があります。最終的にバニティURLなどを使用する場合があります。
この目的のために、Cookieが設定されたメインドメインにアクセスできないと仮定します。
ドメイン外からそのCookieを読み取るにはどうすればよいですか?ああ、IT関係者はバックエンドgrumbleに触れさせないので、JSソリューションでなければなりません。
ありがとう!
できません。
クライアント側のJavaScriptで読み取ることができるCookieは、HTMLドキュメントの<script>
が埋め込まれています。
withCredentials
を設定すると、クロスオリジンリクエストでCookieをサポートできますが、ブラウザによって透過的に処理され、JSはそれらに直接アクセスできません(XHR仕様は getAllResponseHeaders
がCookie関連ヘッダーの読み取りを明示的に禁止する )。クロスオリジンリクエストがCookieにアクセスする唯一の方法は、サーバー(アクセス権がないと言います)がデータを本文または別の応答ヘッダーにコピーすることです。
サーバー側のコンポーネントをインストールできる場合は可能です。
専用ドメインを使用してCookieをホストし、XSSテクニクスを使用して共有できます
Dom1.foo.comにログインすると、Ajax XSS呼び出しを使用してcookie.foo.comにcookieを登録し、dom2.foo.comにアクセスすると、cookie.foo.comにXSS APIを照会する必要があります。
私はしばらく前にそれで遊んだことがあります https://github.com/quazardous/mudoco/blob/master/mudoco/README.txt それはある種のPOCです。
「cookieを使用した」ドメインを指すsrcを使用して、ページにiframeを埋め込むことでそれができると思います。 http://cookiedomain.com/some.html と言います。 Some.htmlページは、Cookieにアクセスしてグローバル変数を設定するJavaScriptを実行します