I
iOS Broadcast
@ios_broadcast3.5K подп.
1.4Kпросмотров
39.0%от подписчиков
12 марта 2026 г.
📷 ФотоScore: 1.5K
🔨 Быстрый гайд по ASWebAuthenticationSession. Если вы задавались целью реализовать веб авторизацию или оценить задачу, то сталкивались с вопросом а как это правильно сделать. ASWebAuthenticationSession ждёт правильный URL‑callback, чтобы понять, что авторизация закончилась, и вернуть пользователя в приложение. Каждый раз приходится вспоминать, оставлю корректный гайд тут. Есть два способа: 1. Custom URL scheme 🔵Регистрируешь, например, myapp:// в Info.plist (CFBundleURLTypes). 🔵В OAuth‑провайдере указываешь redirect URI вида myapp://callback. 🔵ASWebAuthenticationSession стартуешь с callbackURLScheme = "myapp", и когда страница редиректит на myapp://..., сессия ловит URL и отдаёт его в completion: let session = ASWebAuthenticationSession( url: authURL, callbackURLScheme: "myapp" ) { callbackURL, error in // разбираем токен из callbackURL } 🟢Плюсы: просто, минимум инфраструктуры. 🔴Минусы: не очень красиво, возможны диалоги "Открыть в myapp?" 2. Universal links (HTTPS) 🔵Вместо myapp://callback — обычный https://myapp.com/auth/callback 🔵Нужно настроить apple-app-site-association на сервере 🔵Выглядит более профессионально, URL нормальный, без кастомных схем, меньше лишних алертов 🔵С точки зрения ASWebAuthenticationSession логика та же: он ждёт редирект на твой callback‑URL и пробрасывает его в completion. func handleCallback(url: URL) { guard let components = URLComponents(url: url, resolvingAgainstBaseURL: false), let token = components.queryItems?.first(where: { $0.name == "token" })?.value else { return } }
1.4K
просмотров
1564
символов
Да
эмодзи
Да
медиа

Другие посты @ios_broadcast

Все посты канала →
🔨 Быстрый гайд по ASWebAuthenticationSession. Если вы задав — @ios_broadcast | PostSniper