0

私の例では、次の変数を使用します。

  • first_site.com = Cookie 取得コマンドを実行する私の Web サイト

  • specified_site.com = クライアントがすでにログインしている 2 番目の Web サイト

  • my_server.com = 受信したデータを処理するための php スクリプトがあるサーバー アドレス

ユーザーはすでに first_site.com および specified_site.com に接続しています

「first_site.com」から Cookie を取得して「my_server.com」に保存したい

phpまたはjavascriptを使用して、それを行う方法はありますか?!

よろしく

4

3 に答える 3

1

両方のサイトがあなたのもので、両方のサイトのサーバー側コードにアクセスできる場合、サーバー間通信を使用して、最初のサーバーから 2 番目のサーバーに Cookie を転送することができます。

ブラウザーに組み込まれている「同一生成元」保護は、(両方のサーバーを使用せずに) 純粋にクライアント コードからやりたいことを実行できないようにします。

これは、ページが Cookie が属するドメインにある場合にのみ、Cookie を取得できるためです。また、Cookie は (ajax を使用して) ページと同じドメインのサーバーにのみ送信できます。したがって、あるドメインの Cookie を別のサーバーに送信することはできません。これは明らかなセキュリティ違反であり、ブラウザは「同一オリジン」保護でブロックしようとしています。これらの保護については、こちらで読むことができます。

最初のサイトからの協力サーバーがある場合、元のページ要求と共に送信されたときにそのサーバーに Cookie を取得させることができ、そのサーバーはサーバー間通信を使用して 2 番目のサイトに Cookie を送信できます。 . サーバー側のコードを変更できる最初のドメインが自分のものでない場合、明らかに、そのサーバーでコードを実行してこれを行うことはできません。

于 2013-03-21T21:22:17.657 に答える
0

これらはいくつかのオプションです。しかし、最高のものではありません。始めるためのいくつかの一般的な指針:

a。VPNの設定を検討することもできます。これにより、両方のサーバーからのIPSがホワイトリストに登録されます。

  1. Cookie情報を含むRESTAPIを作成できます(ただし公開されていません)!!
  2. App1でCookieデータを利用できるようにします。
  3. リクエスト/レスポンスオブジェクトを介して提供できるCookieオブジェクトとしてCookieを利用できるようにします
  4. 「同一生成元」ポリシーを使用する。app2にapp1と話させることができます
于 2013-03-21T21:33:57.543 に答える
0

それはセキュリティ上の大きな欠陥になるため、これを行う方法はありません。

PHPSESSID をすべて保存する Web サイトを作成したとしたら、多くの Web サイトであなたのプロファイルにアクセスできると想像してみてください...

于 2013-03-21T21:21:35.783 に答える