【发布时间】:2017-06-29 11:19:50
【问题描述】:
您好,先生,我正在使用 Fb Php Sdk 4 和 Graph 2.8,我知道它有点过时,但我想继续使用它。只有经过授权的问题修复才能完成我的项目
我使用了下面的配置和登录数据页面,但它返回给我
图表返回错误:此授权码已被使用。
在我的代码下面
config.php
<?php
session_start();
$_IM=array(
"sitename" => "AppsFunny",
"siteurl" => "http://appsfunny.com",
"sitelogo" => "AppsFunny.Com",
"fb_page" => "/appsfunny",
"aurl" => "appsfunny.com"
);
include "ifunc.php";
include "db.php";
include "Unicode2Bijoy.class.php";
$app_id='423436984657946';
require_once __DIR__ . '/vendor/autoload.php';
use Facebook\FacebookRequest;
$fb = new Facebook\Facebook([
'app_id' => $app_id,
'app_secret' => 'c82ff16cec2f6a055302c5c632c0129b',
'default_graph_version' => 'v2.8',
]);
if (isset($_SESSION['access_token'])) {
$token = $session->getToken();
try {
// Returns a `Facebook\FacebookResponse` object
$response = $fb->get('/me', $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();
$_SESSION['FBID'] = $user['id'];
$_SESSION['FULLNAME'] = $user['name'];
$_SESSION['propic']="https://graph.facebook.com/".$_SESSION['FBID']."/picture?height=200&width=200";
}
?>
和 login.php
<?php
require_once __DIR__ . '/config.php';
$p=$_GET["p"];
$helper = $fb->getRedirectLoginHelper();
$_SESSION['FBRLH_state']=$_GET['state'];
try {
$accessToken = $helper->getAccessToken();
}
catch(Facebook\Exceptions\FacebookResponseException $e) {
// When Graph returns an error
echo 'Graph returned an error: ' . $e->getMessage(); exit;
}
catch(Facebook\Exceptions\FacebookSDKException $e) {
// When validation fails or other local issues
echo 'Facebook SDK returned an error: ' . $e->getMessage();
exit;
}
if (isset($accessToken)) {
$access_token = $session->getToken();
$_SESSION['access_token'] = (string) $accessToken;
header("location:".$p);
}
【问题讨论】:
-
我试过了,先生,但不行
-
请以可读的方式格式化 login.php 代码。顺便说一句,如果您不只是尝试修复旧的现有系统,而是要创建新的系统 - 那么我强烈建议您使用 PHP SDK v5,而不是过时的 v4。
-
login.php 可读兄弟。我为此浪费了很多时间,所以想在同一版本中完成项目
标签: php facebook-graph-api facebook-php-sdk