Я хочу получить друзей пользователя и использовать их, чтобы пригласить их для использования моего приложения. Мне нужно быть в состоянии связаться с ними как-то. Как видите, нет смысла искать друзей моего текущего пользователя, которые уже вошли в мое приложение .
Я знаю, что это возможно, потому что airbnb
имеет эту функциональность для приглашения hosts
:
![enter image description here](https://i.stack.imgur.com/9UHuP.png)
После подробного изучения друзей, которые показывает мне airbnb, похоже, что те друзья, у которых уже есть учетная запись , не отображаются , тогда как те, у кого, вероятно, нет учетной записи , те, которые появляются .
Я менеджер приложения facebook и добавил двух моих друзей в качестве менеджеров (для тестирования). Один из них вошел в мое приложение и, конечно, я тоже вошел.
Функция входа в систему facebook API
запрашивает области действия email,user_friends
. И функция для получения списка друзей:
FB.api("/{user-id}/friends", function(response){...})
Этот ответ возвращается:
{
data: [{name: "My logged friend", id: "123...456"}], // only one
paging: {
cursors: {
after: "FIUQ...ZQT",
before: "FIUQ...ZQT"
},
summary: {
total_count: 984
}
}
Я нашел много вопросов относительно этого поведения (например, это , это , это , это другое . ..).
Все они отмечают, что после версии v2.0
API Graph Facebook, возможность получения полного списка друзей пользователя больше не возможна.
Это скрипт, который я использую для загрузки Facebook API, он работает корректно и делает объект FB
доступным:
<script>
function initFacebook(){
FB.init({
appId: 'XXXXXXXXX',
cookie: true,
xfbml: true,
version: 'v3.2'
})
}
</script>
<script id="facebook-jssdk" onload="initFacebook()"
src="https://connect.facebook.net/en_US/sdk.js"></script>
Как airbnb это делает? Я неправильно использую области? Вызов API отличается? Или есть такое поведение, которое позволяет это (возможно, делиться пользователями между airbnb
и другими приложениями)?
Я знаю, что это можно сделать в версии v1.0
, но срок ее действия истек несколько лет назад.