Начало работы

В этом руководстве объясняется, как начать получать данные из социального графа Facebook.

Прежде чем начать

Вам понадобятся:

Первый запрос

Шаг 1. Откройте инструмент Graph API Explorer

Откройте Graph API Explorer в новом окне браузера. Это позволит выполнять примеры во время чтения этого руководства.

Инструмент загрузит запрос по умолчанию с методом GET, последнюю версию API Graph, узел /me, поля id и name в поле "Строка запроса" и ваше приложение Facebook.

Шаг 2. Создайте маркер доступа

Нажмите кнопку Создать маркер доступа. Появится всплывающее окно входа через Facebook. Это всплывающее окно и есть ваше приложение, запрашивающее разрешение на получение вашего имени и фото профиля из Facebook.

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

Нажмите Продолжить как...

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

Нажмите круглый значок информации рядом с маркером доступа, чтобы просмотреть информацию о нем.

Шаг 3. Отправьте запрос

Нажмите кнопку Отправить в правом верхнем углу.

Результаты

В окне ответа вы увидите ответ JSON с вашим ID пользователя Facebook и именем.

Если вы удалите ?fields=id,name из поля "Строка запроса" и нажмете Отправить, то увидите тот же результат, поскольку поля name и id — это поля узла User, возвращаемые по умолчанию.

Второй запрос

Шаг 1. Добавьте поле

Давайте немного усложним первый запрос, добавив ещё одно поле — email. Существует два способа добавления полей:

Добавьте поле email и нажмите Отправить.

Результаты

Хотя вызов не завершился ошибкой, были возвращены только поля name и id вместе с отладочным сообщением. Нажмите ссылку (Показать) для отладки запроса.

Почти все узлы и поля требуют специального разрешения для доступа к ним. Отладочное сообщение свидетельствует о том, что вам нужно предоставить своему приложению разрешение на доступ к электронному адресу, связанному с вашим аккаунтом Facebook.

Шаг 2. Добавьте разрешение

На боковой панели справа в разделе Разрешения нажмите раскрывающееся меню Добавить разрешение. Нажмите Разрешения для данных пользователей и выберите email.

Создание нового маркера доступа пользователя

Поскольку вы меняете область действия маркера доступа, необходимо создать новый. Нажмите Создать маркер доступа. Как и в первом запросе, вы должны предоставить приложению разрешение на доступ к электронному адресу в окне входа через Facebook.

После создания нового маркера нажмите Отправить. Теперь будут возвращаться все поля в запросе.

Попробуйте получить свои публикации на Facebook.

Нажмите, чтобы просмотреть шаги.

Ссылки в ответе

Обратите внимание, что значения id, возвращаемые в ответе, являются ссылками. Эти ссылки могут представлять узлы, такие как User, Page или Post. Если вы нажмете ссылку, ID заменит содержимое поля "Строка запроса". Теперь можно выполнять запросы для этого узла. Поскольку этот узел подключен к родительскому узлу публикации (Post) пользователя (User), вам может не понадобиться добавлять разрешения. Затем нажмите ID публикации, так как мы будем использовать его в следующем примере.

Примечание. Некоторые ID представляют собой комбинацию родительского ID и новой строки ID. Например, публикация пользователя будет иметь примерно такой ID: 1028223264288_102224043055529, где 1028223264288 — ID пользователя.

Граница контекста

У узла User не так много границ контекста, которые могут возвращать данные. Доступ к объекту User может быть предоставлен только пользователем, которому принадлежит этот объект. В большинстве случае пользователь является владельцем объекта, если он его создал.

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

Попробуйте получить количество реакций на одну из своих публикаций. Вам нужно будет ознакомиться со

справкой по реакциям на объекты.

Нажмите, чтобы посмотреть шаги.

Получение кода запроса

Инструмент позволяет протестировать запросы и при успешном ответе получить код, который можно вставить в код приложения. В нижней части окна ответа нажмите Получить код. Инструмент позволяет получить код для Android, iOS, JavaScript, PHP и cURL. Код будет предварительно выделен, чтобы вы могли его просто скопировать и вставить.

Мы рекомендуем реализовать Facebook SDK для вашего приложения. Этот SDK будет содержать функцию входа через Facebook, которая позволяет приложению запрашивать разрешения и получать маркеры доступа.

Дополнительная информация

Инструмент Graph API Explorer можно использовать для тестирования любых запросов для узлов User, Page, Group и др. Чтобы определить необходимые разрешения и тип маркера доступа, ознакомьтесь со справкой по каждому узлу или границе контекста.