在没有Google+的情况下将OAuth2.0用于Google

时间:2013-11-19 06:10:50

标签: javascript oauth

我正在为使用Gmail的学校电子邮件帐户创建服务。我们无法访问Google+。我在Google的文档中使用了类似this样本的内容。它在大多数情况下工作正常,但当我使用我的学校帐户登录时,我在控制台中收到此响应:

Object {code: 404, message: "Not Found", data: Array[1], error: Object}
code: 404
data: Array[1]
error: Object
message: "Not Found"
__proto__: Object

如何在不使用G + API的情况下向Google进行身份验证?

谢谢!

编辑:它与任何其他帐户完美搭配。

这是我用自己的客户信息替换的基本Javascript。

<script type="text/javascript">

      var clientId = '837050751313';
      var apiKey = 'AIzaSyAdjHPT5Pb7Nu56WJ_nlrMGOAgUAtKjiPM';
      var scopes = 'https://www.googleapis.com/auth/plus.me';

      function handleClientLoad() {
        gapi.client.setApiKey(apiKey);
        window.setTimeout(checkAuth,1);
      }

      function checkAuth() {
        gapi.auth.authorize({client_id: clientId, scope: scopes, immediate: true}, handleAuthResult);
      }


      function handleAuthResult(authResult) {
        var authorizeButton = document.getElementById('authorize-button');
        if (authResult && !authResult.error) {
          authorizeButton.style.visibility = 'hidden';
          makeApiCall();
        } else {
          authorizeButton.style.visibility = '';
          authorizeButton.onclick = handleAuthClick;
        }
      }

      function handleAuthClick(event) {
        gapi.auth.authorize({client_id: clientId, scope: scopes, immediate: false}, handleAuthResult);
        return false;
      }

      function makeApiCall() {
        gapi.client.load('plus', 'v1', function() {
          var request = gapi.client.plus.people.get({
            'userId': 'me'
          });
          request.execute(function(resp) {
            var heading = document.createElement('h4');
            var image = document.createElement('img');
            image.src = resp.image.url;
            heading.appendChild(image);
            heading.appendChild(document.createTextNode(resp.displayName));

            document.getElementById('content').appendChild(heading);
          });
        });
      }
    </script>
    <script src="https://apis.google.com/js/client.js?onload=handleClientLoad"></script>

0 个答案:

没有答案