Google Drive API使用Google +授权登录

时间:2013-09-03 07:48:42

标签: php google-drive-api

我已经在我的网站(在php中)使用Oauth 2授权方法实现了google drive api,其中不同的用户必须输入他们自己的客户端ID和客户端密码才能访问他/她的google驱动器中的文件。

但为了使用户更友好,我计划在此网址https://developers.google.com/drive/about-auth中实施Google+登录方式。

有人可以向我提供有关如何使用谷歌+登录获取谷歌驱动器api请求的刷新令牌的教程吗?

1 个答案:

答案 0 :(得分:2)

这些是步骤......

  1. 使用您的应用/客户端ID和所需的范围调用auth URL。包括“电子邮件”范围。

  2. Google将引导用户通过登录和(如果是第一次通过)授权对话

  3. 最终,浏览器会重定向回您的oauthcallback网址,并为您传递身份验证码
  4. 致电谷歌将身份验证代码转换为刷新令牌。这还将返回用户的Google ID和访问令牌。
  5. 将用户ID存储在会话中,以便随后识别用户
  6. 将刷新令牌与数据库中的Google用户ID一起保留
  7. 随后的访问......

    1. 如果您的会话中有Google用户ID,则可以从数据库中检索刷新令牌,并使用它来根据需要生成访问令牌。
    2. 如果您的会话中没有Google用户ID,请执行上述步骤。这一次,谷歌不会提示用户授权(因为它已经被授权),刷新令牌将是空白的(因为你已经存储了一个)。
    3. 您需要知道的一切都在oauth游乐场页面内。如果单击按钮,您将看到它遵循上面概述的步骤。

      然后您需要处理可能的错误情况,例如

      • 用户拒绝权限
      • 用户撤销权限
      • 谷歌已过期刷新令牌(发生了很多),因此您需要重新验证
      • 超时