Google OAuth2 JS无法获得授权码

时间:2017-08-04 18:59:37

标签: javascript reactjs google-authentication google-oauth2

我在React中有自定义Google登录按钮(遵循品牌推广指南),我需要在Web应用中实现该按钮。 Android应用程序已经使用BE实现了Google登录,并且需要将授权代码发送到BE。我似乎无法访问授权代码(我可以很容易地获得访问令牌,id和id_token)。

我这样初始化:

static googleInit (googleSignInID) {
    gapi.load('auth2', () => {
        ThirdPartyLogInApi.auth2 = gapi.auth2.init({
            // Retrieve the singleton for the GoogleAuth library and set up the client.
            client_id: `${googleSignInID}.apps.googleusercontent.com`,
        })
    })
}

在我的React组件中,我将一个单击处理程序附加到React引用(正如我在其他stackoverflow问题中看到的那样)。

componentDidMount () {
    // element, options, success, failure
    ThirdPartyLogInApi.auth2.attachClickHandler(
        this.button,
        {},
        this.onGoogleSuccess,
        this.setProcessingToFalse
    );
}

在成功回调(this.onGoogleSuccess)中,我可以调用googleUser.getBasicProfile()获取用户信息,并调用googleUser.getAuthResponse(true)获取id_token和access_token,但我也需要授权码。

我的智慧结束了谷歌关于此的文档 - 有人能指出我正确的方向吗?我不想切换整个身份验证流程以使用gapi.auth2.authorize,因为我确实需要用户信息。

由于

编辑:甚至可以访问授权码吗?谷歌似乎抽象了这一步,并立即返回id_token。我只需要看起来像这样的东西: 4 / RQFWJLGd3sJQrgxuRaguzJy2yiUV4fAqVGftRSUYuqc

0 个答案:

没有答案