Google API JavaScript客户端-配额错误:超出用户速率限制

Google API JavaScript客户端-配额错误:超出用户速率限制,javascript,google-analytics-api,google-client,Javascript,Google Analytics Api,Google Client,我正在构建一个web应用程序,该应用程序将在我们的Google Analytics帐户上执行某些任务,但由于“UserRateLimitOvered”而出现错误 我现在所拥有的: (1) 对管理帐户列表运行正常(未分段)查询 (2) 对每个帐户上的所有web属性运行第二个查询(批处理) 第一个查询按预期运行,第二个批处理查询完成,但每个子查询都有相同的错误“配额错误:超出了用户速率限制” 据我所知,客户端库实现了一种速率限制机制,以确保不会发生这种情况。谁能解释一下发生了什么来帮助解决这个问题,

我正在构建一个web应用程序,该应用程序将在我们的Google Analytics帐户上执行某些任务,但由于“UserRateLimitOvered”而出现错误

我现在所拥有的:

(1) 对管理帐户列表运行正常(未分段)查询

(2) 对每个帐户上的所有web属性运行第二个查询(批处理)

第一个查询按预期运行,第二个批处理查询完成,但每个子查询都有相同的错误“配额错误:超出了用户速率限制”

据我所知,客户端库实现了一种速率限制机制,以确保不会发生这种情况。谁能解释一下发生了什么来帮助解决这个问题,我很可能做错了什么。首先感谢你能给予的任何帮助

    (function(window){

    "use strict";

    var dataStore = new GlobalDataStore();      


    function handleAccountProperties(AccountProperties){
        console.log(AccountProperties);
    }

    function getAccountProperties(){
        var batch = gapi.client.newBatch();

        for (var i = 0; i < dataStore.accounts.length; i++) {
            var account = dataStore.accounts[0];
            var request = gapi.client.analytics.management.webproperties.list({
                'accountId': account.details.id
            });           
            batch.add(request);
        }

        batch.then(function(response){
            handleAccountProperties(response.result);
        }, function(reason){
             console.log('Error: ' + reason.result.error.message);
        });
    };

    function getAndHandleAccounts(){
        var request = gapi.client.analytics.management.accounts.list();
        request.then(function(response) {
            if(response.result.items && response.result.items.length) {
                for (var i = 0; i < response.result.items.length; i++) {
                    var account = new GoogleAnalyticsAccount();
                    account.details = response.result.items[i];
                    dataStore.accounts.push(account);
                }
                getAccountProperties();
            }
        });
    };

    function authorise(){
        var authData = {
            client_id: dataStore.clientID,
            scope: dataStore.scopes,
            immediate: false
        };

        gapi.auth.authorize(authData, function(response) {
            if (response.error) {
                console.error('shit went wrong');
            } else {
                gapi.client.load('analytics', 'v3').then(getAndHandleAccounts);
            }
        });
    };

    window.onload = authorise;

})(window);
(功能(窗口){
“严格使用”;
var dataStore=new GlobalDataStore();
函数handleAccountProperties(AccountProperties){
console.log(AccountProperties);
}
函数getAccountProperties(){
var batch=gapi.client.newBatch();
对于(var i=0;i
不要重复发布-他们可能会比我们提供更好的帮助!如果我不发帖,我怎么知道你是否能帮忙。事实上,这种方式更好,因为如果我得到答案,我可以在两个地方张贴,每个人都会更聪明。