2016-03-28 3 views
0

У меня есть успокаивающее обслуживание с аутентификацией OAuth 2.0. Я хочу дать пользователям возможность войти в мое приложение со своей учетной записью на facebook. Мой сервис выдает токены доступа в ответ на запрос на отправку http://localhost:8080/api/oauth/token?grant_type=password&client_id=client_id&client_secret=client_secret&username=user&password=password.Как пользователь может получить токен доступа к моему сервису после входа в систему с помощью facebook?

Вопрос в том, как я могу отправить этот запрос, если пользователь не вводит свой пароль напрямую?

ответ

0
  1. Перенаправить пользователя с экрана FB. https://www.facebook.com/dialog/oauth?client_id= "+ FacebookClientID + " & redirect_uri = "+ Url.Encode (FacebookRedirectURL) +" & response_type = код & сфера = электронный»+ состояние

  2. Extract "код" из ответа

  3. Сделать Получить запрос на https://graph.facebook.com/v2.5/oauth/access_token?client_id= "+ ClientId +" & redirect_uri =»+ redirectURL + "& client_secret =" + clientSecret + "& код =" + код

  4. Теперь вы будете получать доступ Fb токенов

  5. использовать маркер доступа, чтобы получить пользователь утверждает https://graph.facebook.com/v2.5/me?fields=id,email,first_name,last_name&access_token= " + accessToken

  6. После этого вы звоните в вашу службу и генерируете токен