Сценарий взаимодействия
В статье описан порядок взаимодействия вашего iOS-приложения с VK ID Captcha SDK iOS и API ВКонтакте для случая автоматической обработки ошибки капчи от API ВКонтакте и отображения экрана капчи с помощью метода handleCaptcha().
Как установить и подключить VK ID Captcha SDK iOS, смотрите в инструкции.
Схема взаимодействия
Схема взаимодействия с VK ID Captcha SDK iOS
Порядок взаимодействия
- 1.Ваше приложение отправляет запрос к API ВКонтакте.
- 2.API ВКонтакте возвращает мобильному приложению ошибку капчи.
- 3.Мобильное приложение инициализирует класс
VKCaptchaHandler. - 4.Мобильное приложение отправляет в VK ID Captcha SDK iOS запрос на обработку ответа от сервера методом
VKCaptchaHandler.handleCaptcha(). - 5.VK ID Captcha SDK iOS отправляет в Captcha WebView запрос на отображение капчи.
- 6.Пользователь проходит капчу.
- 7.API ВКонтакте анализирует действия пользователя. В зависимости от результата возможны варианты:
- •Успешный сценарий: пользователь — человек, прошёл капчу.
- 1.API ВКонтакте формирует токен успешного прохождения капчи
VKCaptchaTokenи передаёт его в Captcha WebView. - 2.Captcha WebView передаёт
VKCaptchaTokenв VK ID Captcha SDK iOS и закрывает окно капчи. - 3.VK ID Captcha SDK iOS передаёт
VKCaptchaTokenв мобильное приложение. - 4.Мобильное приложение отправляет API ВКонтакте повторный запрос, в ответ на который вернулась ошибка капчи (шаг 2). В запросе нужно передать полученный токен успешного прохождения капчи
VKCaptchaToken. В зависимости от типа капчи нужно указать токен в заголовке или в параметрах запроса. - 5.API ВКонтакте выполняет запрос.
- 1.
- •Неуспешный сценарий: пользователь — бот.
- 1.API ВКонтакте возвращает в Captcha WebView ошибку.
- 2.Повторный показ капчи возможен после отправки повторного запроса (шаг 1). Пользователь может пройти капчу ещё раз или обратиться в техподдержку.
- 1.
- •Неуспешный сценарий: пользователь или бот закрыл окно с капчей или возникла неизвестная ошибка.
- 1.API ВКонтакте возвращает в Captcha WebView ошибку.
- 2.Captcha WebView возвращает в VK ID Captcha SDK iOS ошибку
CaptchaHandlingError. - 3.VK ID Captcha SDK iOS возвращает в мобильное приложение ошибку
CaptchaHandlingError.
- 1.
- •
- 8.Мобильное приложение отображает пользователю результат прохождения капчи.