重定向URL混淆Oauth2(社交集成 - android)

时间:2016-09-25 14:23:19

标签: android url-redirection linkedin-api oauth2

我在我的Android应用中集成了Linkedin和亚马逊登录。我从他们的文档中学习了OAuth2,并了解了这个过程。但是我对整个过程感到困惑:

我认为应该发生什么(以LinkedIn为例):

  1. 我的应用点击了授权网址(https://www.linkedin.com/oauth/v2/authorization?response_type=code&client_id=123456789&redirect_uri=https%3A%2F%2Fwww.example.com%2Fauth%2Flinkedin&state=987654321&scope=r_basicprofile
  2. 我在重定向网址中收到回调。
  3. 首先,我的问题是,在获取重定向网址后,后端会对访问令牌进行另一次API调用吗?或者后端会以某种方式将我带到我的应用程序(如果是,如何?),然后我的应用程序将调用访问令牌。

    我的另一个疑问是,即使不使用OAuth2,我也可以使用此代码获取LinkedIn用户数据:

    LISessionManager.getInstance(getApplicationContext())
                .init(this, buildScope(), new AuthListener() {
                    @Override
                    public void onAuthSuccess() {
    
                        mLinkedinAccessToken = LISessionManager
                                .getInstance(getApplicationContext())
                                .getSession().getAccessToken().toString();
    
                        Toast.makeText(getApplicationContext(), "success" + mLinkedinAccessToken, Toast.LENGTH_LONG).show();
    
                        APIHelper apiHelper = APIHelper.getInstance(getApplicationContext());
                        apiHelper.getRequest(FaceBookLoginActivity.this, topCardUrl, new ApiListener() {
                            @Override
    
    
                            public void onApiSuccess(ApiResponse s) {
    
                                Gson gson = new Gson();
                                mLinkedInUserInfo = gson.fromJson(s.getResponseDataAsString(), LinkedInUserInfo.class);
    

    在这里,我没有指定任何重定向网址,甚至没有点击他们在文档中提到的网址,但我可以轻松访问数据。这不能破坏安全认证的全部目的吗?当然,我错过了一些东西,对整个过程有点困惑。我非常感谢你们的帮助。

0 个答案:

没有答案