Выйдите из системы пользователя на iOS 4 с HTTPBasicAuthentication - PullRequest
1 голос
/ 11 августа 2010

Я программирую приложение для iPhone.Мое (существующее) веб-приложение использует Ruby on Rails (2.3.2) для обслуживания данных.Бэкэнд Ruby on Rails использует gem restful-authentication для аутентификации пользователей.

Для получения пользовательских данных с сервера в приложение iPhone я использую HTTPRiot framework и аутентифицирую пользователя с HTTPBasicAuthentication.

Теперь все работаетхорошо - пользователь может получить и опубликовать некоторые данные в и из приложения iPhone.Но когда я хочу выйти из службы, это кажется невозможным.Из разных тем я понял, что выход из системы просто не реализован в HTTPBasicAuthentication, и я полностью согласен с этим.Я попытался найти обходной путь, например, реализовать переключение в Settings.app, чтобы заставить мое приложение отображать экран входа в систему, когда пользователь возвращается в приложение.

Проблема заключается в том, что iOS4 сохраняет тип соединения "открытым""когда приложение входит в фоновый режим.Для выхода из соединения HTTPBasicAuthenticated это соединение должно быть разорвано.При таком подходе моему пользователю необходимо выйти из приложения, включить переключатель в файле Settings.app, удалить мое приложение из многозадачного режима и снова запустить мое приложение.Это слишком грязно.

Мой вопрос: есть ли более чистый способ выхода из системы / изменения пользователя без полного выхода из приложения?

Некоторые ссылки: HTTPRiot , Выход из системы и базовая аутентификация , Выход из системы и базовая аутентификация 2

...