用Facebook登录后,用户如何接收访问令牌到我的服务?

时间:2016-03-28 09:12:15

标签: rest authentication oauth oauth-2.0 access-token

我通过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发出访问令牌。

问题是如果用户没有直接输入密码,我该如何发送此请求?

1 个答案:

答案 0 :(得分:0)

  1. 将用户重定向到FB屏幕。 https://www.facebook.com/dialog/oauth?client_id=" + FacebookClientID + "&安培; REDIRECT_URI =" + Url.Encode( FacebookRedirectURL )+"& response_type = code& scope = email" +州

  2. 提取"代码"来自回应

  3. 向Get请求 https://graph.facebook.com/v2.5/oauth/access_token?client_id=" + clientID +"& redirect_uri =" + redirectURL +"& client_secret =" + clientSecret +"& code =" + 代码

  4. 您现在将收到fb访问令牌

  5. 使用访问令牌获取用户声明 https://graph.facebook.com/v2.5/me?fields=id,email,first_name,last_name&access_token=" + accessToken

  6. 在此之后,您将致电您的服务并生成令牌