2011-07-26 7 views
0

サイトのB認証を使用するサイトAがあります。 Aサイトでは、curlのpostリクエストをlogin.phpにサイトBに追加しました。また、サイトAでは、login.phpにjquery Ajaxリクエストがあります。エラーがなければ、ユーザーをサイトBにリダイレクトします(javascriptで)。リダイレクト後、セッションクッキーがないためにユーザーが認証されないという事実を除いて、すべてうまくいっています。ですから私の考えは、login.phpのcurlリクエストからセッションIDを読み込み、そのセッションIDを持つクッキーを追加することです。私はそれが私の問題を解決すると思う。 問題は - セッションIDをカールから読み取る方法です ありがとうCURLとセッションID

+1

[PHPカールから変数にクッキーを取得する方法] (http://stackoverflow.com/questions/895786/how-to-get-the-cookies-from-a-php-curl-into-a-variable) – Paulpro

+1

あなたは 'セッションID'を入力すると、次のリクエストとともにクッキーを渡すことができます。 – Paulpro

答えて

1

ユーザーを別のドメインにリダイレクトする場合、ユーザーのブラウザが他のドメインに送信するCookieを設定することはできません。両方のサイトを所有している場合は、cross-domain cookieを実装する必要があります(これを行う方法はほとんどありません。基本的にサイトBのサイトAにいくつかの要素を読み込み、JSがあるドメインから別のドメインにCookieデータをコピーします)。

強制的に他のサイトへのPOSTリクエストを実行したり、送信するHTTPヘッダーをユーザーに教える方法はありません。あなたがドメインBのためにクッキーを設定する方法はありません - あなたがAのためにそれらを設定することができ、あなたが設定した場合、Bは最終的にそれらを読むことができますcross-domain cookie

関連する問題