服务器的Google API身份验证

and*_*ndy 5 php google-calendar-api google-api oauth-2.0

我一直在努力让Google的Calendar API在PHP Web应用程序中运行,但我很难通过身份验证.

我想要做的是允许用户与服务器已知的单个帐户的日历进行交互.

OAuth 2.0文档中涵盖的每种类型的场景都涉及 "用户同意",其中涉及登录表单和登录的个人用户,但我希望服务器本身直接进行身份验证并为自己获取访问令牌.

我是否可以使用OAuth的某些部分或其他替代机制来执行此操作?

小智 3

为此,您必须完成用户同意的步骤,然后将其为您提供的访问令牌复制到 PHP 代码中。

OAuth的通常流程是这样的:

  1. 将用户发送到身份验证页面。
  2. 用户返回 $_GET['code']
  3. 将 $_GET['code'] 发送到 OAuth 服务器以获取令牌
  4. 将用户的令牌存储在数据库中(或会话,如果它的生命周期很短)

但是,当使用这样的单个日历执行此操作时,您需要修改步骤 4。相反,您将令牌转储到屏幕并将其作为变量复制到 PHP 文件中,而不是将其放入数据库中。然后,当您将访问令牌传递到服务器时,您只需传递已知的静态令牌,而不是来自数据库/会话的动态令牌。