2

我正在使用 Javascript 构建一个 URL Shortener 工具,该工具可以使用 Google 的 URL Shortener API 一次处理大约 100k 个 URL。但是在测试中,当涉及到 3k - 4k 左右时,它会在控制台中显示错误:

net::ERR_INSUFFICIENT_RESOURCES

有更好的方法吗?

这是我的代码:

将所有 URL 加载到数组中:

for (var i = 0; i < results.data.length; i++) {
    var idx = results.data[0].indexOf('Redeem URL');
    if (i === 0) {
        continue;
    }
    requestArray.push(results.data[i][idx]);
}

发送请求:

if (requestArray.length) {
    for (var i = requestArray.length - 1; i >= 0; i--) {
        makeRequest(i);
    }
}

function makeRequest(idx) {
    var request = gapi.client.urlshortener.url.insert({
        'resource': {
            'longUrl': requestArray[idx]
         }
    });

    request.execute(function(response) {
        if (idx === requestArray.length - 1) {
            console.log(requestArray.length);
        }
        if (response.id != null) {
            urlResults.push({
                'Redeem URL': response.longUrl,
                'Shorten Redeem URL': response.id
            });
        }
    });
}

function init() {
    gapi.client.setApiKey('xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');
    gapi.client.load('urlshortener', 'v1', function(){});
}
window.onload = init;

非常感谢!

4

0 回答 0