Как определить объект, который понравился пользователю?
Я делаю FQL-запрос для получения сообщений от пользователя:
{
"feeds": "SELECT type, actor_id, target_id, app_data, action_links, permalink, post_id, viewer_id, created_time, updated_time, source_id, message, description, attachment FROM stream WHERE filter_key = 'owner' AND source_id = <userId> AND is_hidden = 0 LIMIT 50"
}
По большей части, результаты отличные. Однако, если результат содержит сообщение о том, что пользователю что-то "нравится", как я могу определить, что ему "понравилось"?
Например:
{
"type": null,
"actor_id": <userId>,
"target_id": null,
"app_data": [
],
"action_links": null,
"permalink": "",
"post_id": "<postId>",
"viewer_id": <userId>,
"created_time": 1369109320,
"updated_time": 1369109320,
"source_id": <userId>,
"message": "",
"description": "<user name> likes a status.",
"attachment": {
"description": ""
}
}
Какой статус?
Или же:
{
"type": null,
"actor_id": <userId>,
"target_id": null,
"app_data": [
],
"action_links": null,
"permalink": "",
"post_id": "<postId>",
"viewer_id": <userId>,
"created_time": 1367029922,
"updated_time": 1367029922,
"source_id": <userId>,
"message": "",
"description": "<user name> likes a link.",
"attachment": {
"description": ""
}
}
Которые связывают?
Нужно ли делать запрос из нескольких частей, чтобы получить дополнительные данные из другой таблицы? Почему target_id всегда нулевой?
1 ответ
Это давняя ошибка, которая не была устранена по неизвестным причинам https://developers.facebook.com/bugs/522743067756848
На самом деле нет эффективного способа сделать это в API.
<postId> = <userid_pId>
Путь через пользовательский интерфейс Facebook будет https://www.facebook.com/userid/posts/pId
Я открыл новый отчет об ошибке, но я очень сомневаюсь, что он будет исправлен.