【问题标题】:How to read users gmail after receiving push notification from gmail users.watch API?收到来自 gmail users.watch API 的推送通知后如何阅读用户 gmail?
【发布时间】:2020-06-16 21:52:31
【问题描述】:

我想实现一个后端服务器,它可以在每次收到新邮件时读取(执行某些操作)用户 gmail。我能够弄清楚每次收到新电子邮件时使用 gmail API users.watch, my server can be notified。现在,为了从 gmail 获取新邮件,我的服务器需要用户在选择加入时提供的用户凭据(身份验证令牌)以供观看。无论如何,这些凭据是否可以与推送通知一起发送到我的服务器(可能使用 users.watch API)。

我遇到的实现相同目的的一种方法是将身份验证和刷新令牌存储在数据库中,只能由我的服务器访问。但是如果不将凭据存储在数据库中就可以实现目的会更好。

【问题讨论】:

标签: gmail-api google-cloud-pubsub google-api-python-client google-cloud-python


【解决方案1】:

当用户对您的应用程序进行身份验证时,假设您请求离线访问,您将获得一个刷新令牌。您应该将其存储在与服务器上的用户关联的安全位置。

当您收到推送通知时,您应该检索存储在服务器上的刷新令牌,并使用它来请求可用于访问用户数据的新访问令牌。

推送通知系统无法向您发送授权,如果它存储您的授权也不是一个非常明智的主意。

【讨论】:

  • 存储刷新令牌解决了我的问题,但我有兴趣探索一些不必存储每个用户的刷新令牌的方法。为此,我遇到了谷歌服务帐户,但无法完全理解如何使用它。不知道这里能不能用google service account来达到目的?
猜你喜欢
  • 1970-01-01
  • 2018-04-17
  • 2012-02-20
  • 2020-10-18
  • 2019-07-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多