Можно ли получить общедоступную ленту новостей на Facebook, если вы не вошли в систему?
Я обычно спрашиваю, возможно ли получать общедоступные каналы без маркера авторизации? Если я не вошел в Facebook, я все еще вижу публичные сообщения, это хороший пример: http://www.facebook.com/adele Я использую API графа Facebook, как это:
uri ="https://graph.facebook.com/" + this.getString(R.string.wall_id) + "/feed?access_token="+Utility.mFacebook.getAccessToken();
JSONObject json = GetJSON.fromURL(uri);
Если я подключен к FB, я успешно получаю каналы. Нужно ли запрашивать новый токен, когда я не в сети?
спасибо!
4 ответа
Вы можете перейти по адресу: http://www.facebook.com/feeds/page.php?id=[APP_ID]&format=json Например: страница Nike Facebook - http://www.facebook.com/feeds/page.php?id=15087023444&format=json
Чтобы узнать APP_ID для страницы, перейдите по https://graph.facebook.com/[page_name] и в выходных данных вы найдете его. например: https://graph.facebook.com/nike - "id": "15087023444"
Более подробная информация здесь: http://costimuraru.wordpress.com/2011/12/16/facebook-how-to-find-out-a-fan-page-id/
Чтобы получить доступ feed
соединение user
тебе нужно read_stream
разрешение, которое автоматически означает, что к нему не могут получить доступ неавторизованные пользователи.
Однако вы можете получить доступ posts
соединение user
используя любой действительныйaccess_token
который включает в себя только собственные сообщения пользователя. Доступ к нему с access_token
кроме одного для владельца будет возвращать только публичные сообщения.
Вы можете использовать приложение access_token
доступ к нему для неавторизованных пользователей.
Для страниц feed
доступ к соединению можно получить таким же образом, используя любой действительныйaccess_token
Кстати, приложение access_token
может быть либо в "новом формате", либо в старом APP_ID|APP_SECRET
формат.
+1 Кости Мурару по его красивой опубликованной ссылке:http://www.facebook.com/feeds/page.php? Id=15087023444&format=json Я благодарю вас за это amigo.
Я нашел альтернативу, я использую следующее:
uri = "https://graph.facebook.com/search?q=" + wall_id + "&type=post";
Надеюсь, это кому-нибудь поможет
Да, вам нужен токен доступа, даже если сообщения общедоступны, и вы можете просматривать страницу публично, даже если не вошли в Facebook.
Большинство компаний делают это, потому что если люди начинают неправильно использовать API, они могут блокировать людей на основе токена.
Тем не менее, я хочу отметить, что @Costi Muraru является верным в том смысле, что вы можете собирать посты на странице через канал, используя URL, который они указали в своем сообщении.