Я создаю приложение для iOS, и мне нужно иметь возможность делать аутентифицированные запросы к приложению Rails 3 для различных битов данных. Приложение Rails 3 использует omniauth и URL-адреса типа https://myapp.com/auth/facebook , например, для аутентификации пользователей через facebook ... и после аутентификации сохраняет аутентификацию в защищенном файле cookie. с именем "auth." "
Я хочу знать, как аутентифицировать моих пользователей из приложения iOS / iPhone, сохранять токен аутентификации и отправлять его вместе с будущими запросами в приложение Rails?
Использование ASIHTTPRequest I ' Я думаю о том, чтобы сделать что-то вроде этого:
Откройте UIWebview, загрузив его с URL-адресом из моего веб-приложения, специфичного для провайдера, с которым они хотят пройти аутентификацию (например, myapp.com/auth/facebook для facebook или myapp.com/auth/yahoo для Yahoo и т. д.).
В случае успеха каким-то образом проанализируйте и сохраните файл cookie аутентификации в приложении iOS без отображения веб-страницы, которую люди обычно видят при аутентификации через веб-сайт ... и вместо этого закрывая UIWebView и возвращаясь к другому UIVewCo ntroller в приложении iOS.
Каким-то образом включить постоянный токен аутентификации в будущие веб-запросы к приложению Rails.
Я также хочу разрешить пользователям разрешить приложению iOS хранить эту информацию локально, чтобы им не приходилось повторно входить в удаленное приложение, если они тоже захотят.
Уместен ли такой подход? Есть ли способ лучше? И, конечно, как на самом деле реализовать вышеизложенное?
Спасибо - wg