Chrome扩展程序:如何在扩展程序中包含google gapi库。 (批处理功能)

时间:2019-05-02 14:19:39

标签: javascript google-chrome-extension frontend gapi

我正在开发一个chrome扩展程序,该扩展程序可以从API抓取用户的作业并将其传递到Google日历API。当前设置它只是为每个分配创建一个fetch()请求。当您尝试在非常短的时间内调用fetch()100次,200次以上时,这会产生问题。我最终不得不对每个请求之间的300ms延迟进行硬编码,以使其完成,这显然不是理想的选择。

我的目标是更改代码以实现Google的gapi库,并利用批处理功能一次处理多个请求。

如果这不可能,那么我可以使用哪些其他方法使请求更有效地发生?

这是我初始化gapi客户端的尝试:

gapi.load('client', {
      callback: function () {
         gapi.client.init({
            'apiKey': chrome.runtime.getManifest().key,
            'clientId': chrome.runtime.getManifest().oauth2.client_id,
            'scope': chrome.runtime.getManifest().oauth2.scopes
         }).then(function () {
            gapi.auth2.getAuthInstance().isSignedIn.listen(updateSigninStatus);

            updateSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get());
         });         
      },
      onerror: function() {
         console.log("Error loading gapi client")
      }
   })

我得到的错误是“无效的cookie策略”。根据我的研究,它看起来像是因为希望在后端调用它?我如何在前端环境中实现gapi,我还看到一些线程暗示,由于扩展的起源是“ chrome:// extension”,因此阻止了在扩展中实例化gapi。

0 个答案:

没有答案