如何使用节点服务器上的用户名和密码访问Google Calendar Access令牌

时间:2019-11-01 13:29:04

标签: node.js oauth-2.0 calendar

我正在尝试使用客户端用户名和密码进行呼叫后生成访问令牌。我想知道如何通过Node Js Code实现这一目标。

1 个答案:

答案 0 :(得分:0)

通常来说,access_token被绑定到OAuth2 authentication framework,这不需要应用程序所有者(您)可以访问您的用户电子邮件/密码之一。这是一种被广泛采用的更安全的方法。

OAuth2在Google Calendar API上的工作方式是三方(或三足)授权。让我们以用户浏览您的网站并希望使用其Google帐户登录的用户为例。验证他身份的步骤如下:

  1. 用户单击“使用Google登录”
  2. 应用程序所有者(您)向Google执行请求,要求用户说要连接(这是OAuth同意屏幕)
  3. Google通过给您一个URL(authorizationUrl)来重定向用户,以进行回复
  4. 在该URL上,会向用户提示有关您的应用程序的一些信息,并可以授予访问权限。
  5. 用户授予访问权限后,Google会使用唯一的代码将用户重定向到您的应用成功页面(callbackUrl)。
  6. 使用该代码,应用程序可以检索access_token,这将临时允许您的应用程序代表用户执行请求

这些步骤是OAuth流程(也称为OAuth舞蹈)的快速概述。要向Google Calendar API发出POST请求,您必须为每个用户执行OAuth跳舞。

实现这种流程可能很棘手。幸运的是,Google gives very helpful documentation on that。如果您不想打扰,也可以使用API​​工具(例如Bearer.sh)来帮您解决这个问题。