Я пытаюсь прочитать оценки со страницы Facebook, чтобы отобразить их внешне, используя PHP SDK. У меня уже есть токен доступа в режиме реального времени, и я смог использовать его для извлечения данных главной страницы, но когда я пытаюсь получить доступ к /ratings
конечная точка, я просто получаю обратно пустой Array ( )
class FacebookReviews
{
protected $session;
protected $page;
protected $ratings;
protected $appId;
protected $appSecret;
function __construct($appId = null, $appSecret = null)
{
session_start();
$this->appId = '123456789123456';
$this->appSecret = '1234567890abcdefghijklmnopqrstuv';
Facebook\FacebookSession::setDefaultApplication($this->appId, $this->appSecret);
$this->session = new Facebook\FacebookSession('LONG LIVE ACCESS TOKEN I GENERATED ON THE GRAPH API');
try {
$this->session->validate();
} catch (Facebook\FacebookRequestException $ex) {
// Session not valid, Graph API returned an exception with the reason.
echo $ex->getMessage();
} catch (\Exception $ex) {
// Graph API returned info, but it may mismatch the current app or have expired.
echo $ex->getMessage();
}
try {
$this->page = (new Facebook\FacebookRequest($this->session, 'GET', '/123456789123456/ratings'))->execute()->getGraphObject()->asArray();
} catch(Facebook\FacebookRequestException $e) {
echo "Exception occured, code: " . $e->getCode();
echo " with message: " . $e->getMessage();
}
}
public function result()
{
return $this->page;
}
}
$reviews = new FacebookReviews();
print_r($reviews->result());
Если я удалю /ratings
из запроса URI он возвращает данные в порядке, но, как я уже упоминал, он не работает.
Я создал токен долгосрочного доступа из своей учетной записи, которая имеет доступ администратора к странице
Задача ещё не решена.
Других решений пока нет …