ASWebAuthenticationSession callbackURL возвращает пустой ответ ключа доступа ({}) в iOS 16 [закрыто]IOS

Программируем под IOS
Ответить
Anonymous
 ASWebAuthenticationSession callbackURL возвращает пустой ответ ключа доступа ({}) в iOS 16 [закрыто]

Сообщение Anonymous »

Я реализовал ключи доступа в своем приложении для iOS с помощью ASWebAuthenticationSession.
Последовательность действий:
  • Приложение вызывает API серверного запроса.
  • Приложение кодирует запрос в Base64 и создает URL:
https://example.com/pass-key/challenge? ... //callback
  • Приложение запускает ASWebAuthenticationSession с этим URL.
  • После завершения процесса ввода пароля веб-сайт перенаправляется обратно на:
myapp://callback?code=(base64)
✅ Работает на:
iPhone 11 (iOS) 18.5)
iPhone 12 / 13 Pro Max (iOS 26)
❌ Ошибка:
iPhone X (iOS 16.7) → возвращает myapp://callback?code=e30%3D
(e30= = {} после декодирования)
Даже открывая его вручную URL-адрес в Safari на iOS 16.7 возвращает {}.
Мы не можем использовать ASAuthorizationController, поскольку наше приложение поддерживает сторонние домены с паролем, не перечисленные в связанных доменах.
Вопрос:
Почему ASWebAuthenticationSession возвращает пустой {} (e30=) в iOS 16.7 и из какая минимальная версия iOS надежно поддерживает этот поток ключей?

Подробнее здесь: https://stackoverflow.com/questions/797 ... onse-on-io
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»