Фид Facebook "user / home" теперь содержит действия в виде постов, которые трудно идентифицировать - PullRequest
3 голосов
/ 31 августа 2011

Когда я звоню на График https://graph.facebook.com/me/home, я получаю постраничный набор сообщений в моем фиде.Недавно я начал получать предметы, которые, по-видимому, представляют такие вещи, как «Джону Доу понравилась страница».Они помечены как ссылки, но если я попрошу у FB предмет, я получу статусный пост.Вот пример, очищенный от личных данных:

{
application =             {
    id = 2530096808;
    name = Pages;
};
comments =             {
    count = 0;
};
"created_time" = "2011-08-28T18:54:09+0000";
description = "some text";
from =             {
    id = xxxxxx;
    name = "John Doe";
};
icon = "https://s-static.ak.facebook.com/rsrc.php/v1/yN/r/xCxxxxxxQO.gif";
id = "xxxxxxx_xxxxxxxxx";
link = "http://www.facebook.com/pages/Ted.Smith/xxxxxxxx";
name = "(name of page)";
picture = "https://fbcdn-profile-a.akamaihd.net/hprofile-ak-snc4/276841_xxxxxxxxxx_xxxxx_q.jpg";
type = link;
"updated_time" = "2011-08-28T18:54:09+0000";
}

Однако, если я запрашиваю этот пост, используя идентификатор, я получаю это:

{
  "id": "xxxxx_xxxxx", 
  "from": {
    "name": "John Doe", 
    "id": "xxxxxxx"
  }, 
  "type": "status", 
  "created_time": "2011-08-28T18:54:09+0000", 
  "updated_time": "2011-08-28T18:54:09+0000", 
  "comments": {
    "count": 0
  }
}

Глядя в FB, я вижупост с надписью «Джон любит (название страницы)».

Как я могу их идентифицировать?Почему он сначала отображается как ссылка, а затем как обновление статуса?Есть ли документация этой "деятельности" информации?Есть и другие примеры из «Джон Доу и другие изменили свой профиль» и так далее.Мне приходится делать какой-то очень глупый, хрупкий фильтрующий код, чтобы удалить их, пока я не знаю, как с ними бороться.

Помощь оценена.

1 Ответ

2 голосов
/ 31 августа 2011

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

Итак, из моих исследований и тестов, вот ответы на ваши вопросы.

1) Вы не можете определить МОСТэти сообщения.Есть некоторые из них, которые, если вы посмотрите на данные, дадут вам представление о том, чем они являются, но вы заметите, что им не хватает некоторых данных, которые вам понадобятся для правильного отображения этого обновления.

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

3) Насколько я могу судить, невозможно получить информацию об этих сообщениях надлежащим образом.,Я пытался буквально все, что я могу придумать, чтобы понять это.Все, что вы можете сделать, это игнорировать сообщения, которые не содержат надлежащие поля, заполненные для указанного типа.Например, если вы получаете тип «status» и он не содержит поля сообщения, это, очевидно, не совсем сообщение о статусе, а какой-то подтип, который вы, вероятно, не сможете правильно отобразить в любом случае, поэтому просто пропустите его.Просто убедитесь, что вы просматриваете данные, прежде чем просто решили, что вы не можете отобразить их, хотя, как я сказал, некоторые из них, несмотря на то, что их сообщают как неправильные, дают вам достаточно информации для их отображения.также получите бесполезные данные, когда сообщение будет иметь какое-то отношение к человеку, с которым ваш пользователь также не дружит напрямую.

Надеюсь, это поможет.

...