2

これは、私のメイン Web サイト maindomain.com の単なるアフィリエイト バージョンです。

ユーザーがaffiliatedomain.comに初めてアクセスしたときに、ユーザーのブラウザにmaindomain.com Cookieを設定する必要があります。これは現在、maindomain.com/addcookie?redirect=affiliatedomain.com へのサーバー側の 302 リダイレクトによって実現されており、その後、affiliatedomain.com への 301 リダイレクトが行われます。

これは、いくつかの理由で明らかに理想的ではありません。a) 不要なクライアント リダイレクトを実行するため、b) maindomain.com を URL リダイレクトのセキュリティ脆弱性に対して開いたままにしておくためです。

maindomain.com で javascript GET を実行するだけで XHR を介してこれを達成することを検討しましたが、これにはAccess-Control-Allow-Originをオンにする必要があり、これは IE のすべてのバージョンでサポートされているわけではありません (サポートする必要があります)。 IE6 および 7)。

したがって、この要件を達成する方法はありますか? JSONP を調べましたが、このメソッドを使用して実装する方法がよくわかりません。

4

1 に答える 1

1

これを行う方法を見つけました。エンドポイント maindomain.com/setcookie.mvc で JavaScript() 型の ActionResult を返すように、maindomain.com でコントローラー アクションをセットアップしました。次に、affiliatedomain.com から、このエンドポイントを指すタグを追加しました。

次に、クライアントは setcookie.mvc ページに対して GET を実行します (タグには同じドメイン ポリシーが適用されないため)。これにより、必要なサーバー側の Cookie ロジックを実行できるようになります。

于 2013-01-30T08:28:17.697 に答える