Создайте долгоживущий токен доступа пользователя из токена доступа, сгенерированного из Graph API Explorer. Не токен доступа к приложению

Моя цель - получить общедоступные данные из временной шкалы пользователя, такие как статусы, каналы, имя пользователя, родной город и т. д. Я использую настольное приложение на Java, которое отправляет HTTP-запрос с токеном доступа для получения данных временной шкалы. Есть 2 типа токенов, один из которых дает мне полные данные, которые я хочу, а другой дает мне частичные данные. Оба упомянуты ниже.

Тип 1. Генерируется в Graph API Explorer после нажатия кнопки "Получить токен доступа" и предоставления разрешений.

(Это истекает через 1 час и предоставляет мне все данные, которые я хочу от временной шкалы пользователя, такие как статусы, идентификатор, имя пользователя, каналы и т. д.). Для этого я использую приведенный ниже URL-адрес и делаю HTTP-вызов API: https://graph.facebook.com/<Username>?fields=id,name,statuses.fields(message)&access_token=AAACEd Это дает мне все упомянутые поля в ответе JSON.

Тип 2. Генерируется после создания приложения.

Используя appId и appSecret, я создал недолговечный токен доступа. (Срок действия истекает через 1 час.) После этого используйте документы и URL, указанные на https://developers.facebook.com/docs/howtos/login/extending-tokens/ Я могу генерировать долгоживущие токены доступа (срок их действия истекает примерно через 60 дней).

Когда я использую этот токен в приведенном выше URL-адресе для аутентификации, он не решает мою задачу и возвращает ограниченную информацию из временной шкалы пользователя. Он не возвращает поле «статусы» и только несколько общедоступных каналов с временной шкалы.

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

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

Пожалуйста, предложите выход, чтобы получить долгоживущий токен доступа типа 1 или любой другой способ выполнить мою задачу. Пожалуйста помоги.


comment
Если вы знаете, что для этого вызова API требуется идентификатор приложения и секрет приложения — почему вы вызываете его без них? Если у вас еще нет зарегистрированного приложения, сначала сделайте это.   -  person CBroe    schedule 26.01.2013
comment
Моя основная проблема заключается в том, в чем разница между токеном доступа пользователя и токеном доступа к приложению. Конечно, они разные, так как один возвращает мне нужные данные (токен доступа, созданный пользователем), а другой возвращает очень ограниченные данные (токен доступа к приложению). Я сделал то, что вы просите меня сделать, но это не решает мою задачу и возвращает ограниченные данные. Принимая во внимание, что с помощью токена доступа пользователя я могу получить то, что именно хочу, но этот токен недолговечен, и я хочу преобразовать его в долгоживущий. Мне нужен выход, чтобы увеличить срок действия токена доступа пользователя. Надеюсь, на этот раз я ясно выразился? Пожалуйста помоги.   -  person Kapil    schedule 26.01.2013
comment
Вы ясны — вроде как, потому что документ, описывающий, как расширить токен доступа пользователя, также очень понятен, IMO. Итак, в чем заключается ваша фактическая проблема в том, что вы просто делаете то, что описано в этом документе?   -  person CBroe    schedule 26.01.2013
comment
Привет .. Я снова отредактировал свой квест, так как мне не разрешили ответить на мой собственный вопрос. Помоги мне найти выход. спасибо   -  person Kapil    schedule 26.01.2013


Ответы (1)


По состоянию на июль 2015 года вы можете легко создать 60-дневный токен доступа в Facebook.

Просто нажмите кнопку «Отладка» на маркере доступа пользователя, который вы хотите расширить на этой странице при входе в систему https://developers.facebook.com/tools/accesstoken/

Затем вы увидите синюю кнопку «Продлить токен доступа» в нижней части страницы.

person Camille Sévigny    schedule 17.04.2018