Получите настенный канал с общедоступной страницы Facebook с помощью Graph API – действительно ли это сложно?

Я начал с чтения « Отображение сообщений Facebook» пользователям, не использующим Facebook, но я не могу поверить, что это сложно получить публичный фид из Facebook.

Страница, на которой я хочу фид, является общедоступной, вам не нужно входить в нее.

Правильно ли я предполагаю, что мне нужна access_token, чтобы получить эту информацию, пытаясь получить доступ к URL без каких-либо ошибок в OAuth.

Итак, поток должен быть таким (массово, чрезмерно сложным):

  1. Аутентификация с использованием пользователя (что, если пользователь не находится на Facebook?)
  2. Некоторая сложная глупость OAuth – просто чтобы прочитать фид, я даже не хочу, чтобы функция на кнопке или на стене
  3. Получите фид с помощью PHP-запроса на правильный URL-адрес с помощью access_token пользователя
  4. Отправлять фид

Предполагая, что пользователь не находится на Facebook, что вы делаете, используйте универсальное приложение для получения фида?

  1. Hardcode – запрос auth для Facebook с использованием идентификатора моего общего приложения и секретности
  2. Некоторая сложная абсурдность OAuth
  3. Получить фид с помощью PHP-запроса на правильный URL-адрес с помощью access_token приложения
  4. Отправлять фид
  5. О нет, auth истек, повторно авторизовался и захватил этот новый access_token для использования в будущих запросах.

Это кажется действительно сложным, поскольку никакая другая причина, кроме того, что Facebook хочет знать ВСЕ, что происходит, было бы проще сделать cURL и очистить контент от общедоступного URL-адреса с помощью XPath.

Любая помощь в этом была бы замечательной.

Спасибо, Джейк

РЕДАКТИРОВАТЬ

Редактирование, чтобы показать это, не является точным дубликатом.

У меня было это с помощью access_token, но теперь он терпит неудачу, токен истек, и я больше не могу использовать его для получения информации из публичной стены.

Я попытался продлить срок действия этого токена, используя методы, упомянутые в других сообщениях, но это не сработало, и срок действия не был расширен – мы сейчас здесь, с недопустимым токеном и дальше.

Кажется, что ручной процесс утверждения запроса OAuth означает, что невозможно запрограммировать фид публичной страницы.

Related of "Получите настенный канал с общедоступной страницы Facebook с помощью Graph API – действительно ли это сложно?"

Два года спустя вы можете программно сделать это с помощью приложения Facebook (пример с использованием PHP и Slim): https://developers.facebook.com/apps/

$base_api="https://graph.facebook.com/"; $client_id="XXXXXX"; $app_secret="XXXXXX"; //get a profile feed (can be from a page, user, event, group) $app->get('/feed/:profileid/since/:start_date', function ($profile_id,$start_date) { $start_time=date('m/d/Y h:i:s',$start_date); $request = new FacebookRequest( getSession(), 'GET', '/'.$profile_id.'/feed?since='.$start_time ); $response = $request->execute(); $graphObject = $response->getGraphObject(); //do something with $graphObject }); function getSession(){ $session = new FacebookSession(getAccessToken()); return $session; } function getAccessToken(){ global $base_api, $client_id, $app_secret; $url=$base_api."oauth/access_token?client_id=".$client_id."&client_secret=".$app_secret."&grant_type=client_credentials"; $str = file_get_contents($url); $token = str_replace ( "access_token=" , "" , $str ); return $token; } 

У меня есть некоторый успех при чтении в прямом фиде без токенов и т. Д. (С использованием сороки, простейшего или запроса).

http://www.facebook.com/feeds/page.php?format=rss20&id= …….. http://www.facebook.com/feeds/page.php?format=atom10&id= .. ……

найдено по адресу : http://ahrengot.com/tutorials/facebook-rss-feed/

Facebook изменил способ извлечения фида общедоступной страницы Facebook, так как другие ответы были опубликованы.

Проверьте мой ответ / вопрос . Это не PHP , но он предоставляет нужные вам URLs и процессы.