Facebook PHP SDK v5: Leia os feeds públicos da página?
(Eu sou novo no Facebook SDK)
Instalei o Facebook PHP SDK v5 desta maneira:
# ./composer.phar require facebook/php-sdk-v4
Então aqui está a minha primeira página que recebe oUser Access Token
com sucesso.
<?php
require_once 'vendor/autoload.php';
$fb = new Facebook\Facebook([
'app_id' => '<my-valid-app-id>',
'app_secret' => '<my-valid-app-secret>',
'default_graph_version' => 'v2.6',
'persistent_data_handler'=>'session',
]);
$helper = $fb->getRedirectLoginHelper();
$accessToken = "";
if ( isset($_SESSION["facebook_access_token"]) ) {
$accessToken = $_SESSION["facebook_access_token"];
}
if ( $accessToken=="" ) {
$loginUrl = $helper->getLoginUrl('http://www.example.com/login-callback.php', []);
echo '<a href="' . $loginUrl . '">Log in with Facebook!</a>';
exit;
}
try {
$response = $fb->get('/me', $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;
}
$me = $response->getGraphUser();
echo 'Logged in as: ' . $me->getName() . ' (' . $me->getId() . ')';
echo '<hr>';
// -----------------------------------------------------------------
// --------------------- THIS WORKS UP TO HERE! --------------------
// -----------------------------------------------------------------
/**
* GET PUBLIC FEEDS
*/
use Facebook\FacebookSession;
use Facebook\FacebookRequest;
use Facebook\GraphUser;
use Facebook\FacebookRequestException;
$session = new FacebookSession( $accessToken );
$request = new FacebookRequest(
$session,
'GET',
'/Google/feed?limit=5'
);
$response = $request->execute();
$graphObject = $response->getGraphObject();
print_r( $graphObject );
?>
(Existe outra página chamada:login-callback.php
o que também funciona bem; para obter oUser Access Token
salvo na sessão.)
Agora ... como mencionado nos comentários no arquivo acima, tudo funciona util nesta sessão de comentários:
// -----------------------------------------------------------------
// --------------------- THIS WORKS UP TO HERE! --------------------
// -----------------------------------------------------------------
Mostra algo como isto:
Logged in as: Robert Walters (48650862XXXXXXX)
ProblemaMas depois do ponto acima (como vemos), começo a ler os feeds públicos de/Google/feed?limit=5
página.
Então vem o erro:
PHP Fatal error: Class 'Facebook\\FacebookSession' not found in ...
...............
QuestõesEstranhamente, não encontreiFacebookSession.php
arquivo no meu SDK.Depois disso, como leio corretamente os feeds públicos de Usuários e Páginas?Obrigado a todos.