Gmail API 多个帐户

Posted

技术标签:

【中文标题】Gmail API 多个帐户【英文标题】:Gmail API multiple accounts 【发布时间】:2018-12-26 04:34:19 【问题描述】:

我有 4 个 gmails 帐户,我正在构建一个仪表板类型的网页,我想在其中显示所有 4 封邮件中未读邮件的数量。但是当我使用一个帐户进行身份验证时,它不会显示其他帐户的计数。

有什么方法可以让多个帐户保持登录状态?

我想要像这样的输出;

邮件 1:10 封未读邮件

邮件 2:9 封未读邮件 等等……

【问题讨论】:

【参考方案1】:

我认为您可以在存储每个计数的凭据时这样做,例如:

if(Session["Credentials"]==null)
    List<UserCredential> Credentials= new List<UserCredential>();
esle
   List<UserCredential> Credentials=(List<UserCredential>)Session["Credentials"];

    UserCredential credential = GoogleWebAuthorizationBroker.AuthorizeAsync(
                             new ClientSecrets
                             
                                 ClientId = "Client_ID",
                                 ClientSecret = "Client_Secret"
                             ,
                             Scopes,
                             "me",
                             CancellationToken.None,
                             new FileDataStore(path)

                             ).Result;
Credentials.Add(Credential); 
Session["Credentials"]=Credentials;

注意:您需要为每个身份验证清除包含 ResponseToken 的文件数据。

【讨论】:

你知道它将如何与 javascript 一起工作吗?如何访问每个帐户的客户 ID 和密码? 客户端 ID 和秘密客户端与您创建用于身份验证的项目相关。您只需要存储 ResponseToken。 我会用java脚本做一个测试,我很快就会给你答案 是的,请注意我想避免重复验证,我只想验证一次(对于所有帐户),然后我会在 10 或 20 秒后显示计数刷新。 运气好吗?你能指导我如何让所有邮件同时登录吗?

以上是关于Gmail API 多个帐户的主要内容,如果未能解决你的问题,请参考以下文章

如何向300多名用户大量添加Gmail API权限?

需要让用户使用多个凭据登录,与使用 Gmail 服务中的其他帐户功能登录相同 - Laravel

通过 Gmail API 发送电子邮件时应用 MSO 条件语句

如何为具有多个帐户的用户在Google App Scripts中选择帐户?

用于 C2DM 注册的邮件帐户

gmail帐户如何存储其他网站的密码