2016-12-28 5 views
0

Я пытаюсь сделать страницу входа для v2.8 graph api.Facebook login php

Я следую всем примерам графика api, но все еще получаю сообщение об ошибке.

Это ошибка:

Facebook SDK returned an error: Cross-site request forgery validation failed. Required param "state" missing from persistent data. 

fbaccess.php

session_start(); 

$app_id  = "xxxxxx"; 
$app_secret = "xxxxx"; 
$site_url = "http://xxxxxxxxx/"; 

require_once __DIR__ . '/src/autoload.php'; 


// Create our application instance 
$fb = new Facebook\Facebook([ 
'app_id' => $app_id, 
'app_secret' => $app_secret, 
'default_graph_version' => 'v2.8', 
]); 

index.php

session_start(); 


include("fbaccess.php"); 


$helper = $fb->getRedirectLoginHelper(); 
$permissions = ['email', 'user_likes']; // optional 
$loginUrl = $helper->getLoginUrl('http://shortbucks.com/facebook/callback.php', $permissions); 

echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>'; 

callback.php

session_start(); 

include("fbaccess.php"); 


$helper = $fb->getRedirectLoginHelper(); 


try { 
// Returns a `Facebook\FacebookResponse` object 
$accessToken = $helper->getAccessToken(); 
$response = $fb->get('/me?fields=id,name', $accessToken); 
} catch(Facebook\Exceptions\FacebookResponseException $e) { 
echo 'Graph returned an error: ' . $e->getMessage(); 
exit; 
} catch(Facebook\Exceptions\FacebookSDKException $e) { 
echo 'Facebook SDK returned an error: ' . $e->getMessage(); 
exit; 
} 

$user = $response->getGraphUser(); 

echo 'Name: ' . $user['name']; 

Может кто-нибудь помочь мне определить ошибку?

Благодарности

+0

вы можете найти какую-то информацию об этом с помощью Google: https: // github.com/facebook/php-graph-sdk/issues/473 – luschn

ответ

0

Привет У меня была такая же проблема, я скачал последнюю версию SDK от Facebook и вуаля работает отлично .. ура