2016-12-28 3 views
0

私はv2.8グラフapiのログインページを作ろうとしています。Facebookログイン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']; 

エラーを特定する際に役立つ情報がありますか。します。https:あなたはGoogleとこれに関するいくつかの情報を見つけることができます

おかげ

+0

// github.com/facebook/php-graph-sdk/issues/473 – luschn

答えて

0

こんにちは、私は同じ問題を抱えていた、私はFacebookのからのSDKの最新バージョンをダウンロードしたと出来上がりが完璧に動作します。..歓声