Туториал: вход в мобильном приложении с Telegram

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.

Аутентификация в мобильных приложениях с помощью Telegram Login Widget обделена информацией как официальной документации, так и в интернете. Меня зовут Александр, в этой статье поделюсь примером реализации входа в iOS приложение c помощью Telegram с блекджеком и граблями. В статье приведены сниппеты кода на Typescript + React, Go и Swift.

Содержание:

  • Telegram Login Widget API.

  • Telegram Login Widget Internals.

  • Кастомизируем некастомизируемое.

  • Особенности на бекенде

  • Интеграция в нативное приложение

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

  • Отдельный маршрут /oauth в веб-приложении (в нашем случае, написанном на React)

  • Набор эндпроитов на бекенде, которые обработают данные аутентификации

  • iOS приложение

Telegram Login Widget API

Если вы уже ранее писали аутентификацию с помощью любого популярного OAuth 2.0 провайдера, типа Google, вы наверняка ожидаете какую-то мобильную библиотеку, которая предоставит все необходимые API. Однако в Telegram пошли своим минималистичным путем, предоставив нам Telegram Login Widget -  маленький файл Javascript, который разработчик должен просто добавить к своему web-сайту. 

Документация Telegram, предлагает сделать быстрые настройки встраиваемого кусочка кода:

  • Имя бота

  • Размер кнопки и радиус краев (с показом или без фото юзера, если он уже аутентифицирован в web-версии Телеграм)

  • И самая важная, на мой взгляд настройка, - выбор callback или redirect url, который будет вызван в качестве ответа на успешную аутентификацию. 

Вот и весь доступный API.

После встраивания, если всё прошло успешно, Telegram добавляет в DOM дерево iframe фиксированного размера, в котором отображается кнопка и подгружаются другие скрипты, которыми заведует телеграм

Источник: https://habr.com/ru/articles/888308/


Интересные статьи

Интересные статьи

В данной статье будет показана нестандартная реализация компонентов Vue + Bitrix, которую вряд ли кто то видел и использовал.Без NPM, без сборщиков и без костылей. Все "нативными" средствами
Помню, недавно выполнял задание на вакансию масленка после технического собеседования и открыл для себя порт Faker API на .net. Отличная библиотека для генерации тестовых объектов по моделям.
Это пост-вопрос, в нем я попробовал сформулировать основные проблемы нейросетей, решение которых может сделать прорыв в технологии ИИ. В основном речь о сетях, что работают с текстом ...
Много всякого сыпется в мой ящик, в том числе и от Битрикса (справедливости ради стоит отметить, что я когда-то регистрировался на их сайте). Но вот мне надоели эти письма и я решил отписатьс...
От скорости сайта зависит многое: количество отказов, брошенных корзин. Согласно исследованию Google, большинство посетителей не ждёт загрузки больше 3 секунд и уходит к конкурентам. Бывает, что сайт ...