0

내가하려는 것은 사용자가 페이스 북에 연결하고, 자신의 정보 (전자 메일, 이름, profile_pic)를 가져 와서 내 사이트에 자동으로 등록하도록하는 것입니다.페이스 북에서 Laravel 4

문제는 내가/사용자/로그인/FB를 방문 할 때/나는 권한을 부여하기 위해 FB 응용 프로그램에 리디렉션이며, 그것은 나에게이 줄

http://local.serv/user/login/fb/callback?code=AQB7Uf7pcZSY89WYUKofY8bOgBY1qCcWA5p6_G-9MVdczN60C0TNOgFIi9LBRwquagZ6VbC6_kjD9-D0ZevKHyNGw88LuRJcuqdq2RbwCKNlC02_4eMtiNAWxX76XHm1CzU0F7nSVQ4KxENoDPFpKIs1oV-wQTkO7YuuGznL9UuzfK-hqTtZAIRBvQ_N_yh03LsdgaZ9-f6z5yc5FGnJ3sJyrC-3DGrjkSzhPpJHHk5tr7LorzqW9TNcaFpB9eE51wdsEHOa5oNEWycwzXjY-7Me1Uod3KVBGpb8tzeYVHArphMc2n45IF1pfAWMZZZ51Dw&state=f25e8641df013970542b7463b8899ccf#=

에 나를 리디렉션 및 여기에 오류

Facebook \ FacebookSDKException (700) 
You must provide or set a default application id. 

내 경로입니다

Route::get('user/login/fb', function() { 

    FacebookSession::setDefaultApplication('', ''); 
    $helper = new FacebookRedirectLoginHelper('user/login/fb/callback'); 
    $loginUrl = $helper->getLoginUrl(); 
    return "<a href='$loginUrl'>facebook</a>"; 
}); 

Route::get('user/login/fb/callback', function() { 
    // A FacebookResponse is returned from an executed FacebookRequest 
    $helper = new FacebookRedirectLoginHelper('user/login/fb/callback'); 
    $session = $helper->getSessionFromRedirect(); 
    $request = new FacebookRequest($session, 'GET', '/me'); 

    try { 
     $response = $request->execute(); 
     $me = $response->getGraphObject(); 
    } catch (FacebookRequestException $ex) { 
     echo $ex->getMessage(); 
    } catch (\Exception $ex) { 
     echo $ex->getMessage(); 
    } 

    print_r($me);//->getProperty("id")); 

    $user = new Giftee; 
     $user->name = $me->getProperty('first_name') . ' ' . $me->getProperty('last_name'); 
     $user->email = $me->getProperty('email'); 
     $user->photo = 'http://graph.facebook.com' . $me->getProperty('id') . '/picture?type=large'; 

     $user->save(); 

}); 

추 신 :보기가있는 자습서가 있고 fb 로그인을 laravel과 통합하는 방법에 대한 모든 정보는 공유하십시오. 며칠 동안 찾고 있었지만 자료는 너무 제한되어 있습니다.

+0

. 즉시 철회하고 장래에 그러한 실수를하지 마십시오. –

+0

테스트 앱입니다. 괜찮습니다. – Halnex

+0

테스트 응용 프로그램이든 아니든, 사용자를 대신하여 악의적 인 사람이 불법적 인 행위를하고 싶지 않을 것입니다. –

답변

2

user/login/fb/callback을 요청하면 Facebook API 자격 증명이 설정되지 않고 해당 경로의 시작 부분에 FacebookSession::setDefaultApplication(...)을 추가하거나 글로벌 구성 파일에서이를 설정할 수있는 다른 라이브러리를 사용하십시오.

귀하의 경로는 다음과 같이한다 : 당신은 당신의 페이스 북의 API 자격 증명을 게시

Route::get('user/login/fb/callback', function() { 
    FacebookSession::setDefaultApplication(); // your API credentials 

    // here goes the rest of your code 
}; 
관련 문제