Вопрос о едином входе в Facebook из моего приложения для iOS - PullRequest
3 голосов
/ 27 января 2011

Я пишу приложение для iPhone, которому нужен серверный компонент, и вместо того, чтобы заставлять пользователя создавать новую учетную запись только для моего приложения, я решил облегчить им жизнь, если бы он вошел в систему со своей учетной записью Facebook , Я не планирую использовать API Connect Facebook очень сильно, я просто решил, что никто не хочет запоминать дополнительный пароль, если он не обязан.

Проблема в том, что я не совсем понимаю, как правильно выполнять аутентификацию на стороне сервера. Вот как я это делаю сейчас:

1) Клиентское приложение iphone вызывает UIWebView с указанием https://graph.facebook.com/oauth/authorize??client_id=<my_client_id>&redirect_uri=<my_redirect_uri>&...

2) Пользователь входит в Facebook.

3) UIWebView перенаправляется на мой сервер с маркером доступа OAuth в качестве параметра. Я перехватываю это в клиентском приложении iphone и выполняю запрос как NSURLRequest для захвата ответа моего сервера.

4) Мой сервер получает этот запрос, скрывает токен OAuth, использует его для получения идентификатора пользователя в Facebook, скрывает его и отправляет обратно в клиентское приложение iphone идентификатор пользователя Facebook и случайно сгенерированный пароль.

5) С этого момента клиентское приложение iphone взаимодействует только с моим сервером по протоколу HTTPS (больше никогда с Facebook), используя в качестве учетных данных users_facebook_id / randomly_generated_password.

У меня два вопроса.

1) Такое ощущение, что у меня нет правильного решения здесь. Существует ли стандартный, передовой метод для такого рода вещей? (т. е. использовать учетные данные Facebook для входа на свой сервер с вашего собственного клиента iPhone) Может кто-нибудь связать меня с объяснением или учебником?

2) Я видел facebook ios sdk , и это выглядит намного проще, чем то, что я делаю сейчас. Может ли это сделать то, что мне нужно здесь?

Спасибо за помощь!

1 Ответ

2 голосов
/ 31 января 2011

Для тех, кто находит этот вопрос и ищет дополнительную информацию: Дизайн для аутентификации Facebook в приложении iOS, которое также обращается к защищенному веб-сервису

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...