Graph API me/threads возвращает странный идентификатор потока

У меня странная проблема, и я не уверен, ошибка ли это в моем коде или ошибка в том, как я использую API Facebook.

В последнее время я играл с Facebook Graph API, и теперь я начинаю писать приложение, которое захватывает сообщения зарегистрированного пользователя. Я вызываю конечную точку /me/threads, и она успешно возвращается, но идентификаторы не отформатированы должным образом. Пример того, что я получаю от Graph API, это "t_/qZVQQhfJDgfEhGEPzF41Q". Эквивалентный запрос FQL возвращает тот же поток с идентификатором «1200043279354», что более похоже на то, что я ожидал.

Эта проблема стала очевидной для меня, когда я попытался запустить FQL-запрос для извлечения «SELECT ... FROM message WHERE thread_id = t_/qZVQQhfJDgfEhGEPzF41Q». Он вернулся с жалобой на то, что «t_ не является членом таблицы сообщений». Я попытался избавиться от «t_», и он пожаловался, что «/ qZVQQhfJDgfEhGEPzF41Q» не существует. Тот же запрос FQL для "...thread_id = 1200043279354" возвращает то, что я хочу.

Любые идеи о том, что может происходить? Просто невозможно переключаться между Graph API и FQL, как это делаю я?


person Matthew Haugen    schedule 15.03.2012    source источник


Ответы (2)


Я немного поискал, но не могу сказать, что это за конечная точка (/me/threads), хотя я нашел этот отчет об ошибке: Новые API обмена сообщениями (/me/threads) возвращают недопустимые символы в идентификаторах тем/сообщений.

Документы для объекта API графа User говорят о входящих< /em>, а не потоки, и действительно, если вы попытаетесь получить /me/inbox, вы получите список сообщений и правильный идентификатор для каждого ( если у вас есть разрешение read_mailbox), вы можете попробовать:

person Nitzan Tomer    schedule 15.03.2012
comment
Эта ошибка выглядит так, как будто это то, что происходит для меня. Сейчас развертывается конечная точка /me/threads, документация находится по ссылка . Но похоже, что вы правы и что это просто ошибка. Думаю, я найду способ обойти это. Спасибо! :) - person Matthew Haugen; 20.03.2012

Вы правы, что идентификаторы содержат необычные символы. Но я нашел решение. Вместо

https://graph.facebook.com/?t_xmfNQUVV7FKR3%2FnIWcfgIA

пытаться

https://graph.facebook.com/messages/?id=t_xmfNQUVV7FKR3%2FnIWcfgIA
person MarekJ47    schedule 12.07.2012