getSessionFromRedirect()
기능으로 FacebookSession을 가져 오는 데 문제가 없습니다.하지만 토큰을 반환하는 데 문제가 있습니다. Facebook PHP SDK v4 현재 액세스 얻기
Facebook\FacebookSession::setDefaultApplication(
Config::get('api/facebook/app_id'),
Config::get('api/facebook/app_secret')
);
$fb = new Facebook\FacebookRedirectLoginHelper(Config::get('api/facebook/url'));
if(Session::exists(Config::get('session/facebook'))) {
//echo Session::get(Config::get('session/facebook'));
$session = Session::get(Config::get('session/facebook'));
} else {
$session = $fb->getSessionFromRedirect();
var_dump($session);
//Session::put(Config::get('session/facebook'), $session->getToken());
}
if(isset($session)) {
//Do Facebook stuff here
} else {
$params = array(
'scope' => 'email, user_birthday'
);
echo "<a href='".$fb->getLoginUrl($params)."'>Login</a>";
}
당신이 볼 수 있듯이
, 나는 그것을 보내고var_dump
처럼 FacebookSession 객체 주위를 연주했지만, 난 여전히 토큰을 얻을 수없는 것. 나는 문서를 읽었고 FacebookSession 객체는
getToken()
함수를 가지고 있지만 그것은 나를 위해 작동하지 않는 것 같습니다. 여기
내가 그래서 같이 될 것입니다 당신이 를 작동하게하기 위해 스크립트의 상단으로 session_start를 작성해야 세션
object(Facebook\FacebookSession)#9 (2) { ["accessToken":"Facebook\FacebookSession":private]=> object(Facebook\Entities\AccessToken)#4 (3) { ["accessToken":protected]=> string(220) "*INSERT TOKEN HERE, THIS WAS REPLACED FOR THE QUESTION*" ["machineId":protected]=> NULL ["expiresAt":protected]=> NULL } ["signedRequest":"Facebook\FacebookSession":private]=> NULL }
나는 실제로 그것을 알아내는 끝났다. 이미'session_start()'를 init 파일에서 호출 했으므로 그렇지 않습니다. '$ session' var이 설정되었는지를 확인한 후에 함수를 실행할 필요가있었습니다. 그래도 고마워! – cameronmoreau