Пользовательские друзья в реальном времени обновления: новые друзья

К сожалению, API Facebook в реальном времени только сообщает о , которые что-то изменило в друзьях связь пользователей приложения.

Что я должен сделать, чтобы определить, что Усера имеет, просто стал другом с <�ними> UserX ?

В настоящее время, каждый раз, когда я получаю , друзья Усера изменили уведомление с Facebook API в реальном времени, я получаю целое /UserA/friends.json , оповещение throu целый результат просто определить то, что было добавлено с прошлого раза.

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

1
nl ja de

1 ответы

Это - способ, которым это разработано и нет никакого "решения" для него.

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

Source: https://developers.facebook.com/docs/reference/api/realtime/

Это имеет большой смысл, потому что Facebook в состоянии послать вам ВСЕМ ОБНОВЛЕНИЯ, не зная, есть ли у вас соответствующие разрешения получить новые данные, таким образом, очень легкий способ сделать это с точки зрения частной жизни.

If you have a valid user token (in your db) you can retrieve the updated fields via Graph API/FQL and compare it with the data in your database. Without realtime API you need to pull data every x hours/days, which is even more waste of resources.

If you don't have a valid user token you can retrieve the updated fields via Graph API/FQL when the user comes back to your app and compare it with the data in your database. Without realtime API you always need to update/check the data when the user comes back.

2
добавлено
Да, нет никакой "created_date" области в друге связи и никакого способа заказать результат виртуальным "created_date" afaik.
добавлено автор Mike Lieser, источник
Сделайте вас, действительно должны спасти user' s друзья? Can' t вы просто получаете его каждый раз, когда ваше заявление требует так. Возможно, не весь ваш application' s особенности нуждаются в нем? Когда необходимо проверить дружбу, можно сделать это с вопросом FQL: (js) "ВЫБИРАЮТ uid2 ОТ друга ГДЕ uid1 =" + uid + "И uid2 =" + предназначенный +")", That' s, как I' m выполнение его.
добавлено автор xrDDDD, источник
Хорошо, у меня есть символы действительного пользователя. Но как я восстанавливаю "обновленные" области? например, новые друзья начиная с последней даты я проверил. Я думаю, что в настоящее время нет никакого способа подвергнуть сомнению друзей, приказанных добавлять-датой. Таким образом, если пользователь Facebook просто получил 1 нового друга, и API в реальном времени регистрирует о том, что, я все еще должен подвергнуть сомнению всех его друзей и выдержать сравнение с тем, что я уже имею?
добавлено автор muhqu, источник
We' ре, уже делающее вокруг 100k вызовов API в день, главным образом вызванный API в реальном времени. Просто требуемый, чтобы узнать, мог ли бы быть способ уменьшить стоимость ' идентификация нового friends'.
добавлено автор muhqu, источник