Google chrome extension 如何查询登录了多少个gmail帐户?

Google chrome extension 如何查询登录了多少个gmail帐户?,google-chrome-extension,gmail,gmail-api,firefox-addon-webextensions,Google Chrome Extension,Gmail,Gmail Api,Firefox Addon Webextensions,对于webExtension,我试图通过向以下地址发送xmlhttprequest来检查gmail收件箱: https://mail.google.com/mail/u/0/feed/atom https://mail.google.com/mail/u/1/feed/atom https://mail.google.com/mail/u/2/feed/atom 。。。每一个账户都是如此。我想对所有当前登录的帐户执行此操作,但我不知道如何找到该号码 当然,有一种愚蠢的方法,我只是不断增加u/#

对于webExtension,我试图通过向以下地址发送xmlhttprequest来检查gmail收件箱:

https://mail.google.com/mail/u/0/feed/atom
https://mail.google.com/mail/u/1/feed/atom
https://mail.google.com/mail/u/2/feed/atom
。。。每一个账户都是如此。我想对所有当前登录的帐户执行此操作,但我不知道如何找到该号码

当然,有一种愚蠢的方法,我只是不断增加u/#/,直到我循环回/u/0/,并在那里进行检查


但这很慢,因为我必须等待异步返回,希望有更好的方法。

不确定gmail的具体情况,但你可以使用它读取“mail.google.com”(或accounts.google.com或类似网站)的所有用户cookie

这假设您知道要查找的cookie的名称,以便可以推断用户登录了多少个帐户

另外,确保将
cookies
权限添加到manifest.json中

browser.cookies.getAll({ domain: 'mail.google.com' })
  .then(cookies => {
    // do something with the cookies
  });
相反,如果您可以假设每个gmail收件箱都在某个选项卡中打开,那么您可以只查询当前所有选项卡:

browser.tabs.query({ url: "https://mail.google.com/mail/u/*" })
  .then(tabs => {
    tabs.forEach(tab => {
      // do an XHR request to tab.url or just extract the inbox ID for later use
    });
  })