// GET "giris-yap/facebook"
public function action_facebook_index()
{
$facebook = IoC::resolve('facebook-sdk');
$user = $facebook->getUser();
if($user)
{
$profile = $facebook->api('/me');
return View::make('home.login-facebook')
->with('message_area', null)
->with('username', $profile['username']);
}
else
{
return Redirect::to($facebook->getLoginUrl(array('next' => 'http://dugun.dev/giris-yap/facebook')));
}
}
// POST "giris-yap/facebook"
public function action_facebook_process()
{
$facebook = IoC::resolve('facebook-sdk');
$user = $facebook->getUser();
$profile = $facebook->api('/me');
$input = Input::all();
Auth::attempt(array('username' => $profile['username'], 'password' => $input['password']));
if(Auth::check())
return Redirect::to('account');
else
return View::make('home.login-facebook')
->with('message_area', 'Giriş denemesi başarısız.')
->with('username', $profile['username']);
}
上記のコードは私のマシンでは問題なく動作しますが、私の友人は Chrome と Firefox の両方でエラーになります。
Chrome: エラー 310 (net::ERR_TOO_MANY_REDIRECTS): リダイレクトが多すぎます。
Firefox: Firefox は、サーバーがこのアドレスへの要求を決して完了しない方法でリダイレクトしていることを検出しました。
次の行で発生します。
return Redirect::to($facebook->getLoginUrl(array('next' => 'http://dugun.dev/giris-yap/facebook')));
理論的には; 私が Facebook にリダイレクトすると、Facebook は にリダイレクトしaction_facebook_index()
、それが繰り返されます。ただし、Facebook はそれをリダイレクトすべきではありません。アプリケーションのアクセス許可を与えるためのフォームをユーザーに表示し、リダイレクトして戻します。私のパソコンでは正常に動作しますが、私の友人は上記の問題を抱えています。
それを解決するために私にできることはありますか?