Javascript 谷歌驱动器缩略图超过403速率限制

Javascript 谷歌驱动器缩略图超过403速率限制,javascript,google-drive-api,Javascript,Google Drive Api,我们有一个具有库功能的应用程序,可以在用户之间共享照片/文档。基本流程和问题如下: 用户在应用程序中共享一个文件,该文件未列出 其他用户可以请求当前与组共享的文件列表 然后,他们请求关于他们想要列出的任何文件的元数据,其中包括我们随后显示的缩略图url 通常缩略图显示得很好,但有时我们会得到403。一段时间后,他们将重新开始工作,而我们不会改变任何事情。值得一提的其他几项是: 实际的API调用似乎从未达到任何极限。即使只是请求一个文件,我们也会遇到这个问题。据我们所知,谷歌的控制台没有显示任何超

我们有一个具有库功能的应用程序,可以在用户之间共享照片/文档。基本流程和问题如下:

  • 用户在应用程序中共享一个文件,该文件未列出
  • 其他用户可以请求当前与组共享的文件列表
  • 然后,他们请求关于他们想要列出的任何文件的元数据,其中包括我们随后显示的缩略图url
  • 通常缩略图显示得很好,但有时我们会得到403。一段时间后,他们将重新开始工作,而我们不会改变任何事情。值得一提的其他几项是:

  • 实际的API调用似乎从未达到任何极限。即使只是请求一个文件,我们也会遇到这个问题。据我们所知,谷歌的控制台没有显示任何超出限制的内容
  • 如果在单独的选项卡中打开缩略图,它似乎总是毫无问题地出现
  • 当它进入这种模式时,我们的所有开发人员似乎都同时达到了它,因此我们猜测它与我们的应用程序的某些限制有关,但我们似乎找不到任何我们正在超出的限制。(注意:我们的开发人员在家工作,所以他们都有不同的IP地址。)
  • 下面是我们403的详细信息
  • 我们猜测这与以下内容无关:

  • 并发请求太多,因为即使只处理一个文件也会出现问题
  • 未经授权,因为(a)文件未列出,(b)我们刚刚登录,(c)当您在选项卡中打开缩略图时,它显示得很好 有什么想法吗

    谷歌硬盘配额截图

    经过几天的实验,我很确定这是从
    localhost
    环境访问相关URL造成的。每当我投入生产时,我试图从谷歌访问的缩略图的配额限制就会自行解决

    虽然我没有确凿的证据证明这是事实,但考虑到观察到的行为,这肯定是有意义的。

    我的“解决方案”是使用新的
    referrerpolicy
    ,并在image元素中将其设置为
    无referrer

    <img referrerPolicy="no-referrer" src="GOOGLE_THUMBNAIL_IMAGE_LINK"/>
    
    
    

    该属性是实验性的。在撰写本文时,它仅在Chrome和Firefox上受支持,所以不是真正的修复程序。其工作原理是
    无参考
    意味着图像请求与直接转到链接时使用的图像请求相同(缩略图似乎总是工作)。

    有两个限制。每日限额和费率限额。速率限制在给定的秒内。你看到403有多久了?还可以查看api控制台,看看它是否显示了达到的限制。我可以在Google控制台中找到驱动器api配额。这就是你所说的利率限制吗?如果我达到了你说的第二个极限,我在哪里可以找到?(我更新了帖子,显示了我们配额屏幕的截图)@aashtonk-你知道这件事吗?@TMan遗憾的是,我们从来没有知道问题出在哪里。这部分是因为我们无法始终如一地重新创建它。它只是随机开始发生,然后会在一段时间后停止。@aashtonk该问题是否也出现在生产中?嗯,我想我们主要是在开发和QA环境中看到的。我想知道它是否与非公共URL相关。我不知道我曾经在Prod中看到过。同样的事情也发生在我身上。它来了又去,没有任何一致的行为。如前所述,它似乎只在从
    localhost
    访问页面时发生。上线后,这个问题似乎没有出现。我猜谷歌对来自本地主机的请求数量是有限制的。如果有太多人从
    localhost
    进行这些调用,则超过了速率限制。您是否在生产环境中尝试过这种方法?它有用吗?@raz3r的问题是用户使用的是旧浏览器,但对于我们建立的公司内部网站来说,它很好。对我有用。对于通过Firebase auth托管的Google个人资料图片。