🛠 Дополнительные методы и FAQ по авторизации
В этом разделе собраны специфические методы аутентификации, решения редких ошибок и ответы на архитектурные вопросы.
🟢 Аутентификация через WhatsApp
Альтернатива SMS и Telegram, особенно популярная в Латинской Америке и некоторых сегментах СНГ.
Интеграция через Whapi.cloud:
- Зарегистрируйтесь на Whapi.cloud.
- Создайте канал и сканируйте QR-код для привязки номера.
- В FlutterFlow создайте API Call (POST):
- URL:
https://gate.whapi.cloud/messages/text - Headers:
Authorization: Bearer [YOUR_API_KEY],Content-Type: application/json - Body (JSON):
{ "typing_time": 0, "body": "Ваш код подтверждения: 1234", "to": "<phone_number>" }
- URL:
🔑 Кастомная аутентификация (Custom Auth / JWT)
Если стандартные методы Firebase/Supabase не подходят, используйте Custom Authentication.
Полезные ссылки:
- Custom Authentication (JSON Web Tokens) — Подробный разбор интеграции с внешним API.
- FlutterFlow Custom Authentication (Video) — Глубокий разбор работы с JSON Web Tokens (JWT).
- Supabase Magic Link во FlutterFlow — Беспарольная аутентификация через email.
- JWT.io — Инструмент для отладки и проверки содержимого ваших токенов.
Проблема: Истечение токена (401 Error)
При использовании Infinite Scroll в API-запросах токен может истечь в процессе прокрутки.
- Решение: Проверяйте
token_expired_timeперед выполнением запроса или используйтеRefresh Tokenлогику. Если запрос вернул 401, показывайте кнопку «Обновить сессию», которая инициирует обновление токена иRefresh Database Query.
❓ Часто задаваемые вопросы (FAQ)
Как определить начальный экран (Log In vs Home)?
Если ваше приложение построено полностью на API:
- На странице авторизации (On Page Load) добавьте Conditional Action.
- Проверяйте состояние сессии (например, наличие токена в App State).
- Если токен валиден — переход на Home, иначе — оставляем на Login.
Ошибка: Пользователь создается в Auth, но не в Firestore
Если запись в базе данных не появляется:
- Проверьте настройки Firebase во FlutterFlow.
- Убедитесь, что поле “Create User Document” включено.
- Проверьте Firestore Rules — возможно, база запрещает запись новому пользователю.
Telegram Web App (TMA)
Для получения chat_id пользователя в Web App, открытом внутри Telegram:
- Не пытайтесь делать проверку только на фронтенде (это небезопасно).
- Передавайте данные инициализации на свой бэкенд, проверяйте подпись Telegram и генерируйте свой JWT для FlutterFlow.
📺 Подборки видео
- Magic Link Authentication — Вход по ссылке из письма.
- Подборка видео об авторизации (Playlist)