Подтвердить что ты не робот

Пользовательский токен для поиска по графику facebook

В соответствии с инструкцией здесь поиск общедоступной информации (как https://graph.facebook.com/search?q=QUERY&type=OBJECT_TYPE) должен иметь действительный токен доступа. Поскольку я знаю, токен доступа - это когда пользователь разрешил приложениям получать доступ к его информации; но это жгучая общественная информация. Как получить токен доступа к приложениям для поиска общедоступной информации?

На этой странице facebook автоматически добавляет токен доступа к ссылке в качестве

https://graph.facebook.com/search?q=watermelon&type=post&access_token=MY_ACCESS_TOKEN

Я создал токен доступа моими приложениями как https://graph.facebook.com/oauth/access_token?client_id=APP_ID&client_secret=SECRET_ID&grant_type=client_credentials

Когда я использую сгенерированный токен доступа в URL https://graph.facebook.com/search?q=watermelon&type=post&access_token=GENERATED_ACCESS_TOKEN, он дает ошибку

{
   "error": {
      "message": "A user access token is required to request this resource.",
      "type": "OAuthException"
   }
}
  • Как я могу создать токен доступа в своих приложениях?
  • Или мне нужно создать токен доступа по собственной учетной записи? если да, то как?
  • Поскольку он ищет общедоступный профиль, facebook не нуждается в авторизации для каждого поиска, могу ли я создать токен доступа для выполнения различных поисков?
4b9b3361

Ответ 1

Интерфейс API поиска графического интерфейса имеет изменения, ожидающие перехода с третьего квартала 2013 года. Следующее изменение вступит в силу 10 июля 2013 года:

Изменения в графическом API-интерфейсе Метки доступа к приложениям потребуются для всех вызовов Graph API поиска, кроме "Места и страницы". Поиск приложения больше не поддерживается.

https://developers.facebook.com/blog/post/2013/04/03/platform-updates--operation-developer-love/

Ответ 2

Для поиска в API-интерфейсе facebook с помощью

http://graph.facebook.com/search?q=watermelon&type=post

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

В графическом API в июле 2013 года были внесены изменения, в соответствии с которыми для поиска пользователей и сообщений вам необходимо иметь действительный токен доступа пользователей. Пользовательский токен доступа может быть сгенерирован вами самостоятельно, аутентифицируя ваше приложение и создавая токен доступа пользователя для вашего приложения.

Но остается вопрос: как мы должны создавать токен пользовательского приложения для наших приложений, не заставляя других пользователей аутентифицировать наши приложения?

Ответ 3

Ток доступа, который вы запрашиваете, выглядит как токен доступа к приложению. Этот токен отличается от токена доступа "пользователь" или "страница" и используется для разных вещей.

https://developers.facebook.com/docs/howtos/login/login-as-app/

Это можно использовать для изменения параметров вашего приложения, создания и управлять тестируемыми пользователями или, например, читать ваши приложения. Токены доступа к приложениям также могут использоваться для публикации контента в Facebook на от имени лица, предоставившего разрешение на публикацию приложение.

В зависимости от того, что вы пытаетесь сделать, маркер приложения может быть неправильной формой OAuth. Ваш пример (поиск публичных сообщений с термином "арбуз" ) не требует токена OAuth, поэтому вы, очевидно, пытаетесь использовать другой тип поиска графа. Не говоря о том, что вы на самом деле пытаетесь получить доступ, вы не можете дать вам правильные рекомендации.

Однако я собираюсь предположить, что вы пытаетесь получить доступ к объектам графа, требующим разрешения от конкретного пользователя. В этом случае вам нужно сначала получить разрешения от этого пользователя, запросив объем необходимых разрешений.

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

Этот токен будет длиться только в течение короткого периода времени после входа пользователя в ваше приложение. Он также может быть переведен на более долгосрочный токен доступа

https://developers.facebook.com/docs/howtos/login/extending-tokens/

Ответ 4

Вам не нужно передавать какой-либо токен для поиска в общедоступной информации (если вы не хотите искать в пользовательском контексте). Просто позвоните по следующему URL-адресу и просмотрите URL-адрес. Пожалуйста, отметьте, что я использовал http вместо https.

http://graph.facebook.com/search?q=watermelon&type=post

Но чтобы сделать мой ответ более ясным - с надлежащим образом предоставленным access_token я могу позвонить в https-версию вышеуказанного URL-адреса (для версии https требуется токен доступа), и он просто отлично работает без каких-либо проблем.

Ответ 5

Если вы ищете программно и URL-адрес поиска никогда не будет виден конечному пользователю, вы можете использовать его вместо:

&access_token=app_id|app_secret

Подробнее об этом здесь: https://developers.facebook.com/docs/facebook-login/access-tokens/