提问人:Venelin 提问时间:11/23/2015 最后编辑:aydinugurVenelin 更新时间:4/11/2018 访问量:23423
Facebook PHP SDK - Graph 返回错误:无效的 OAuth 访问令牌
Facebook PHP SDK - Graph returned an error: Invalid OAuth access token
问:
这是我的代码:
登录名 .php:
<?PHP
require_once __DIR__ . '/Facebook/autoload.php';
$fb = new Facebook\Facebook([
'app_id' => '',
'app_secret' => '',
'default_graph_version' => 'v2.2',
]);
$helper = $fb->getRedirectLoginHelper();
$permissions = ['email','public_profile']; // optional
$loginUrl = $helper->getLoginUrl('http://www.sportsector.bg/login-callback.php', $permissions);
echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>';
这是我的登录回调.php:
<?PHP
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
session_start();
require_once __DIR__ . '/Facebook/autoload.php';
$fb = new Facebook\Facebook([
'app_id' => '',
'app_secret' => '',
'default_graph_version' => 'v2.2',
]);
try {
// Returns a `Facebook\FacebookResponse` object
$response = $fb->get('/me?fields=id,name', '{access-token}');
} 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'];
当我点击链接时,我被重定向到 Facebook,我必须点击继续。之后,我回到我的网站上,收到以下错误:Login with Facebook!
Graph returned an error: Invalid OAuth access token.
有人可以告诉我我的错误在哪里,我该如何解决这个问题?
答:
10赞
Axel Amthor
11/23/2015
#1
您没有检索到有效的访问令牌。
改变:
$fb = new Facebook\Facebook([
'app_id' => '',
'app_secret' => '',
'default_graph_version' => 'v2.2',
]);
$helper = $fb->getRedirectLoginHelper();
try {
$accessToken = $helper->getAccessToken();
$response = $fb->get('/me?fields=id,name', $accessToken );
....
} catch(Facebook\Exceptions\FacebookResponseException $e) {
...
看这里
评论
0赞
Venelin
11/23/2015
现在,当我回到我的网站时,我收到以下错误:Notice: Use of undefined constant accessToken - assumed 'accessToken' in /var/www/html/sportsector.bg/login-callback.php on line 19 Graph returned an error: Invalid OAuth access token.
0赞
Axel Amthor
11/24/2015
是的,对不起,忘记了.疯狂的编辑。$
$accessToken
0赞
Venelin
11/29/2015
现在我收到以下错误:你能给我任何建议吗?Facebook SDK returned an error: Cross-site request forgery validation failed. Required param "state" missing.
0赞
Aamir Khan
4/11/2018
#2
错误:
Facebook SDK 返回错误:未从 Graph 返回访问令牌。
仅将您的回拨 URL 添加到
$helper = $fb->getRedirectLoginHelper();
自
$helper = $fb->getRedirectLoginHelper('http://www.sportsector.bg/login-callback.php');
这是我的工作形式..
评论
1赞
Nico Haase
4/11/2018
这真的解决了原来的问题吗?您的错误消息看起来有所不同
0赞
JenuJ
9/6/2018
对我不起作用,添加重定向 url 时显示相同的错误。
评论