Токен фейсбук что это
Маркеры доступа
Маркер доступа — это строка с непрозрачным значением, которая идентифицирует пользователя, приложение или Страницу и может использоваться приложением для вызовов API Graph. Когда человек входит в приложение с помощью входа через Facebook и предоставляет запрошенные разрешения, приложение получает маркер доступа, который обеспечивает временный защищенный доступ к различным API Facebook. Получить маркер доступа можно несколькими способами.
В маркере содержится информация о том, до какого срока он действителен и каким приложением сгенерирован. Чтобы пройти проверки конфиденциальности, большинство вызовов API на Facebook должны содержать маркер доступа. В различных случаях используются маркеры доступа разных типов.
Он требуется всегда, когда приложение вызывает API, чтобы считать, изменить или записать данные Facebook от лица определенного человека. Маркер доступа пользователя обычно получают через диалог входа, но пользователь должен предоставить на это разрешение.
Этот маркер доступа позволяет считывать и изменять настройки приложения. Его также можно применять для публикации действий Open Graph. Этот маркер генерируется с использованием секрета, заранее согласованного между приложением и Facebook, и затем используется в вызовах, изменяющих настройки всего приложения. Для получения маркера доступа приложения нужно отправить вызов с сервера на сервер.
Он похож на маркер доступа пользователя, но разрешает API считывать, записывать или изменять данные, принадлежащие Странице Facebook. Если вам нужен маркер доступа к Странице, следует сначала получить маркер доступа пользователя и запросить разрешения для Страницы. Получив маркер доступа пользователя, вы можете получить маркер доступа к Странице через API Graph.
Маркер клиента применяется для идентификации приложения. Его можно встроить в двоичный код нативного мобильного приложения или в приложение для ПК. Маркер клиента не является секретным идентификатором, поскольку встраивается в приложения. Он обеспечивает доступ к ограниченному числу API на уровне приложения. Маркер клиента указывается на панели приложения. Он используется редко, поэтому мы не будем рассматривать его в этом документе. О маркерах клиента можно прочитать в документации по API, в которых они применяются.
Маркеры доступа пользователей
На различных платформах для генерации маркеров доступа пользователей используются разные API, но в основе процесса лежит общая для всех платформ схема:
Краткосрочные и долгосрочные маркеры
Маркеры доступа пользователей бывают двух видов: краткосрочные и долгосрочные. Краткосрочные маркеры обычно действуют примерно 1–2 часа, а долгосрочные — около 60 дней. Стоит учитывать, что срок действия маркера доступа может измениться без предупреждения или закончиться раньше. Подробные сведения см. в разделе, посвященном обработке ошибок.
При входе на веб-платформу создаются только краткосрочные маркеры, но их можно преобразовать в долгосрочные. Для этого нужно отправить с сервера вызов API с секретом приложения.
Мобильные приложения, использующие Facebook SDK для iOS и Android, по умолчанию получают долгосрочные маркеры.
Приложения со стандартным доступом к API Marketing Facebook, использующие долгосрочные маркеры, получают маркеры с неограниченным сроком действия. Эти маркеры могут быть аннулированы по разным причинам, но не исключительно из-за прекращения срока действия. Это также касается маркеров доступа для системных пользователей в Business Manager.
Переносимость маркеров
Важно понимать, что маркеры доступа можно переносить. Получив маркер доступа, вы можете применять его в вызовах к серверам Facebook из мобильного клиента, веб-браузера или от своего сервера. Маркер, полученный на клиенте, можно передать на сервер, чтобы использовать его в вызовах с сервера на сервер. Маркер, полученный с помощью серверного вызова, можно передать на клиент, чтобы отправлять вызовы с клиента.
Переносить маркеры между клиентом и сервером следует через защищенное HTTPS-соединение, чтобы обеспечить безопасность аккаунтов. Информацию о последствиях перемещения маркеров между клиентами и сервером см. здесь.
На различных платформах применяются разные методы для запуска этого процесса и поддерживаются функции, позволяющие управлять маркерами доступа от имени разработчика и человека, предоставившего разрешения.
Android
Пример кода
Пример кода
JavaScript
Пример кода
Веб-приложение (без JavaScript)
При разработке веб-приложения без использования Facebook SDK for Javascript маркер доступа нужно будет сгенерировать во время выполнения действий, описанных в соответствующем документе.
Маркеры доступа приложения
Маркеры доступа приложения позволяют отправлять запросы к API Facebook от имени приложения, а не пользователя. С их помощью можно изменять параметры приложения, создавать тестовых пользователей и управлять ими, а также просматривать статистику приложения.
Ограничения
Некоторые данные пользователя, обычно доступные приложению при выполнении запроса с указанием маркера доступа пользователя, могут быть не видны при использовании маркера доступа приложения. Если ваше приложение должно считывать и использовать данные пользователя, следует применять маркер доступа пользователя, а не приложения.
Генерирование маркера доступа приложения
Чтобы сгенерировать маркер доступа приложения, требуются:
Пример кода
Этот вызов вернет маркер доступа приложения, который можно использовать вместо маркера доступа пользователя в вызовах API, как описано выше. Из соображений безопасности маркер доступа приложения ни в коем случае нельзя встраивать в клиентский код, так как это позволит любому, кто загрузит вашу веб-страницу или декомпилирует приложение, узнать его секрет. В результате этот человек сможет изменить ваше приложение. Поэтому в большинстве случаев вы будете использовать маркеры доступа приложения только в вызовах, отправляемых с сервера на сервер.
Примечание. Поскольку в этом запросе используется секрет приложения, его ни при каких условиях нельзя вставлять в клиентский код или в двоичный код приложения, который можно декомпилировать. Очень важно, чтобы никто и никогда не узнал секрет вашего приложения. Следовательно, этот вызов API можно выполнять только с помощью серверного кода.
Существует ещё один способ отправки вызовов к API Graph, при котором маркер доступа приложения не требуется. Вы можете просто передать ID и секрет приложения как параметр access_token :
Что выбрать: этот способ или сгенерированный маркер доступа, — зависит от того, где скрыт секрет вашего приложения.
Маркеры доступа к Страницам
Эти маркеры используются в вызовах API Graph для управления Страницами Facebook. Чтобы можно было сгенерировать такой маркер доступа, администратор Страницы должен предоставить вашему приложению необходимые разрешения для Страницы. После этого вы сможете получить маркер доступа к Странице, используя маркер доступа пользователя с нужными разрешениями.
Пример кода
Будет возвращен список Страниц, на которых вам назначена какая-либо роль, и информация о каждой Странице, в том числе ее категория, ваши разрешения для нее и и маркер доступа к Странице.
Маркер доступа к Странице позволяет отправлять вызовы API от имени Страницы. Например, вы можете обновить статус на Странице, а не в хронике пользователя, или просмотреть статистику Страницы.
Маркеры доступа к Страницам уникальны для каждой Страницы, администратора и приложения.
Маркеры доступа клиентов
Начиная с версии SDK 13.0 для iOS и Android, которая должна выйти в начале 2022 г., для всех вызовов API Graph будет необходим маркер клиента.
Немногие конечные точки API Graph поддерживают маркеры доступа клиентов. Маркеры клиентов, как и маркеры приложений, отправляют запросы API Graph от имени приложений, а не пользователей. Но их нужно использовать, только если маркер необходимо встроить в код мобильного или веб-клиента, вместо того чтобы хранить на защищенном внутреннем сервере. Если, кроме маркеров клиентов, конечная точка поддерживает другие типы маркеров, по возможности лучше использовать их.
В отличие от других маркеров, маркеры доступа клиентов нельзя использовать в запросах самостоятельно: к ним всегда нужно добавлять ID приложения. Для этого добавьте маркер доступа в конце ID приложения, отделив его вертикальной чертой ( | ):
Чтобы получить маркер доступа клиента, войдите на Панель приложений и перейдите в раздел Настройки > Дополнительно > Безопасность > Маркер клиента.
Длина маркеров доступа
Facebook периодически меняет содержимое и механизмы кодирования маркеров доступа, поэтому со временем длина маркеров тоже может меняться, причем в любую сторону. По этой причине используйте для хранения маркеров доступа тип данных с переменной длиной (т. е. без ограничения размера).
Статьи по теме
Список маркеров доступа и информацию об отладке для каждого из них см. в Инструменте маркеров доступа.
Долгосрочные маркеры доступа
Маркеры пользователя и маркеры доступа к Странице, предоставляемые по умолчанию, являются краткосрочными и действуют несколько часов. Однако такой маркер можно обменять на долгосрочный.
SDK для iOS, Android и JavaScript автоматически обновляют маркеры, если пользователь открывал приложение в течение последних 90 дней. Нативным мобильным приложениям, которые используют SDK от Facebook, предоставляются долгосрочные маркеры доступа пользователя, действующие около 60 дней. Эти маркеры обновляются один раз в день, когда пользователь приложения отправляет запрос на серверы Facebook. При отсутствии запросов срок действия маркера истечет приблизительно через 60 дней, и для получения нового маркера пользователю придется вновь выполнить вход.
Последняя версия API Graph: v12.0
Получение долгосрочного маркера доступа пользователя
Долгосрочный маркер доступа пользователя можно сгенерировать из краткосрочного. Долгосрочные маркеры обычно действуют около 60 дней.
Пример ответа
Процесс получения долгосрочного маркера доступа пользователя выглядит так:
Полученный долгосрочный маркер можно применять на сервере или отправить его для дальнейшего использования клиенту.
Оговорки
Нельзя запрашивать долгосрочный маркер с использованием маркера, срок действия которого истек. Если срок действия маркера истек, ваше приложение должно предложить пользователю войти заново, чтобы повторно сгенерировать новый краткосрочный маркер доступа.
Вызов необходимо отправлять с сервера, а не из клиента. Этот вызов API содержит секрет приложения, поэтому запрос ни в коем случае не следует отправлять из клиента. Вместо этого реализуйте на сервере код создания запроса и передайте ответ, содержащий долгосрочный маркер, в код клиента. Эта строка будет отличаться от исходного маркера, поэтому, если вы сохраняете маркеры, замените старый.
Не используйте одни и те же долгосрочные маркеры для двух и более веб-клиентов (например, если человек входит в приложение с нескольких компьютеров). Вместо этого с помощью долгосрочных маркеров нужно сгенерировать на сервере код, который позволит получить долгосрочный маркер в клиенте. Далее будет описано, как создать долгосрочные маркеры из долгосрочных маркеров на сервере.
Получение долгосрочного маркера доступа к Странице
Долгосрочный маркер доступа к Странице можно сгенерировать из долгосрочного маркера доступа пользователя. Такие маркеры доступа к Странице имеют неограниченный срок действия. Срок действия истекает или маркер становится недействительным только при определенных условиях.
Пример ответа
Получение долгосрочных маркеров для клиентов
Facebook позволяет получать для приложений долгосрочные маркеры доступа, которые помогают избежать активации механизма защиты от спама. Эта функция доступна для приложений, которые:
На высоком уровне долгосрочный маркер можно получить для клиента следующим образом:
Получение кода
Пример ответа
Отправка кода для получения долгосрочного маркера доступа
Пример ответа
Процесс получения долгосрочного маркера выглядит так:
Инструкции о том, как войти в Facebook с помощью токена
Вход в систему с помощью токена имеет множество преимуществ, которые являются быстрыми и не зависят от контрольной точки Facebook. Но не все знают, как правильно и безопасно войти в токен. Советы по программному обеспечению расскажут, как войти в Facebook с помощью токена.
1. Используйте код для входа в Facebook с помощью токена.
Шаг 2: Затем вы нажимаете Входить запустить код. Появится окно с просьбой ввести свой токен для входа в систему. Вы продолжаете вводить токен и нажимаете ОК для входа в Facebook.
2. Используйте закладки для входа в Facebook с помощью токена.
Шаг 1: Вы переходите на домашнюю страницу Facebook и выбираете значок звездочки для создания закладок. Затем вы выбираете Добавлять чтобы настроить наши закладки в соответствии с кодом javascript.
Шаг 2: В разделе редактирования закладок вы можете назвать закладку как угодно. Отделить URL ты Копировать код ниже и вставьте.
После завершения ввода кода нажмите Сохранить завершить.
Шаг 4: Когда появится панель закладок, щелкните только что созданный значок закладки.
Шаг 5: Система попросит вас ввести токен для входа в систему. Вы переходите к введите токен и нажмите ОК закончен.
В этой статье Советы по программному обеспечению показали, как быстро войти в Facebook с помощью токена и без контрольной точки. Хорошего дня!
Access Tokens
This guide explains how to get User and Page access tokens.
Get a Short-lived User Access Token
Use one of the following methods to get a short-lived User access token:
These methods create a short-lived User access token that is valid for 1 hour.
Get a Long-lived User Access Token
Before You Start
You will need the following:
On success, your app gets this response:
This token is valid for 60 days.
Get a Page Access Token
Before You Start
To get a Page access token, send a GET request to the /PAGE-ID endpoint using your User access token. Replace PAGE-ID and USER-ACCESS-TOKEN with your information.
On success, your app receives this response:
Get Access Tokens of Pages You Manage
Before You Start
To get list of Pages and their corresponding Page access tokens, send a GET request to the /USER-ID/accounts endpoint. Replace USER-ID and USER-ACCESS-TOKEN with your information.
On success, your app receives the following response:
Limitations
All long-lived access tokens may be invalidated before they expire, even non-expiring Page access tokens under certain circumstances. An access token is invalidated if the user ends their session with the app, if the user who requested the token no longer has a role on the app or Page, or when a security issue has been detected.
Invalidate a Token
To invalidate a Page or User access token, the person that created the token will need to remove and then re-add the App. This will invalidate all access tokens created by that person for the App. The following help articles describe how to remove an app from a user or business.
The App can then be re-added by getting a User Access Token, or logging into the App.
Как получить OAuth token Facebook
Facebook требуется токен доступа к странице, если вы хотите использовать данные со своей страницы Facebook, настроить их и встроить на свой веб-сайт.
Например, токен доступа к странице требуется, если вы хотите, чтобы ваш канал обновлялся каждый час, отображал прошлые события и другие полезные функции.
Как получить токен доступа вам следует выполнить несколько шагов, которые мы подробно описали ниже. Это будет работать, только если вы являетесь администратором страницы Facebook, с которой пытаетесь получить данные.
Инструкция получения Page Access Token
2. У вас должно открыться выпадающее меню, в котором выбирайте пункт «Добавить новое приложение».
3. Введите имя приложения, адрес электронной почты и «Себя» в качестве цели. Нажмите на кнопку создания ID для приложения.
4. Пройдите проверку безопасности, она представляет собой стандартную капчу.
5. Если все пройдет нормально, то вы успешно создадите приложение, и оно отобразится.
6. После создания приложения, перейдите во вкладку «Инструменты» и выберите пункт Graph API Explorer.
7. В открывшемся окне обратите внимание на правый верхний угол. Там должно быть выбрано ваше приложение, которое мы создали ранее. Если там отображается другое приложение, выберите нужное.
8. После этого, вы должны выбрать пункт «Получить маркер», и в выпадающем меню нажмите на пункт «Получить маркер доступа к Странице».
9. После этого, у вас уточнят к какому аккаунту будет привязываться приложение, выберите нужный и подтвердите свои действия.
10. В графе появятся доступные страницы. Когда вы выберите нужную страницу, для нее автоматически сгенерируется временный токен. Он будет действовать всего пару часов.
11. Вы можете нажать кнопку «Отправить», чтобы проверить как все работает и увидеть ответ.
Собственно мы получили нужный нам токен, но единственный его недостаток, что он перестанет работать спустя 2 часа. Необходимо продлить время его работы.
12. Нажмите на значок с восклицательным знаком слева от токена. Вы увидите всю информацию по сгенерированному токену.
13. В правом нижнем углу открывшейся страницы выберите пункт «Открыть в Инструменте маркеров доступа».
14. Вы попадете в специальный Отладчик. В нижнем левом углу нажмите кнопку «Продлить маркер доступа».
15. От вас потребуется ввести свой пароль, после чего время действия данного маркера доступа (токена) продлится до двух месяцев.
Итоги
Используя Facebook Page Access Token, вы всегда сможете взаимодействовать со своей страницей, и выполнять большой ряд различных действий. Эти данные могут быть встроены в любые веб-страницы и другие приложения. Для любого современного приложения или сайта, взаимодействие с различными социальными сетями не только приветствуется, но уже является практически нормой.