Моя общая цель - просто отобразить сообщения со своей страницы Facebook на веб-сайте, но я чувствую, что упускаю что-то важное, что делает эту, казалось бы, простую задачу довольно сложной!
Я настроил свое приложение в Facebook Developer и сгенерировал тестовый токен доступа с помощью Graph API Explorer, чтобы проверить приведенный ниже пример https://developers.facebook.com/docs/reference/php/examples, в котором используется SDK PHP. Это работает нормально.
<?php
require_once __DIR__ . '/vendor/autoload.php';
$fb = new \Facebook\Facebook([
'app_id' => '{your-app-id}',
'app_secret' => '{your-app-secret}',
'graph_api_version' => 'v5.0',
]);
try {
$response = $fb->get('/me?fields=name,hometown', '{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;
}
$me = $response->getGraphUser();
echo 'All the data returned from the server: ' . $me;
echo 'My name is ' . $me->getName();
$hometown = $me->getHometown();
$hometown_name = $hometown->getName();
echo 'My hometown is ' . $hometown_name;
?>
Однако, учитывая, что срок действия токена доступа истекает, у меня сложилось впечатление, что я должен запросить новый токен, когда кто-то посещает веб-сайт (если срок действия предыдущего истек и предполагается, что Я храню его для использования в период, когда он активен). Это правильно? Если это так, я не могу понять, как генерировать токен в этих обстоятельствах. Есть посты, подобные этой, с 7-летним стажем go ( Facebook PHP SDK, посвященный токенам доступа ), но, похоже, ничто не может заставить работать с примером, который я использую (предположительно, потому что это более старая версия SDK)
Может ли кто-нибудь помочь с созданием нового токена, чтобы мой канал basi c работал без ручного создания токена доступа? Конечно, это просто основные вещи, но это сбивает меня с толку. Я видел ссылки на использование формата '{your-app-id} | {your-app-secret} "для создания токена доступа, но, похоже, создается маркер приложения, который не выполняет эту работу.
Любая помощь будет высоко ценится!
Спасибо!