我如何设置收集用户凭据的服务使用 google gmail api 验证用户身份并从他们的收件箱中获取邮件

How do i setup a service that collects users credentials authenticate the user with google gmail api and fetch mails from their inbox

我正在构建一项服务,我需要从不同用户的 Gmail 收件箱中提取某些邮件。我一直在寻找一种方法来做到这一点,只是为了继续绊倒 google OAuth 流程。有没有一种方法可以在没有 OAuth 流程的情况下使用 Gmail API 进行身份验证,并访问不同的用户收件箱并获取消息?因为我不需要 GUI,因为此服务将 运行 在服务器上。

您需要了解的第一件事是私有数据和 public 数据之间的区别。 Public 数据是您无需许可即可访问的数据。例如 public 个上传到 YouTube 的视频。 Google 节假日日历在 Google 日历上。

私有数据是用户拥有的数据,要访问该数据,您需要获得具有访问权限的用户的许可。

要访问某些人的个人 Gmail 电子邮件帐户,您需要获得他们的许可,获得该许可的唯一方法是使用 Oauth2。一旦用户同意,您将需要使用 oauth2 请求用户同意,如果您还请求离线访问,您将获得刷新令牌。然后,您的后端系统可以使用刷新令牌在需要时请求新的访问令牌。然后可以使用此访问令牌访问 Gmail api.

如您所述,这些是您要访问的标准 gmail 帐户。没有其他选择。用户必须授予您访问其数据的权限。