首页 > 解决方案 > 如何循环API的页码?

问题描述

我想通过使用 do-while 或 for 循环来循环所有页面,
如何构建从第一页返回到最后一页的循环。

function dearAPI(endpoint,sheetname,dig) {
  const dataRows = [];
  let pagenumber = 1;
  const a = UrlFetchApp.fetch(
     **`https://inventory.dearsystems.com/externalapi/v2/${endpoint}?page=${pagenumber}&limit=1000`,**
     {
       'method':'get',
          headers:
       {
         "api-auth-accountid": accountID,
         "api-auth-applicationkey": secret,
       },
         "contentType": 'application/json'
     }); 
  var sheet = SpreadsheetApp.getActiveSheet();
  var json = JSON.parse(a.getContentText());   
  var headers = [Object.keys(json.Products[0])];
  Logger.log(headers);
  sheet.getRange(1,1,headers.length,headers[0].length).setValues(headers); // Put values to Spreadsheet.

  var getFinal = [];
  for(var i = 0; i < json.Products.length; i++){
        var final = Object.values(json.Products[i]);
        getFinal.push(final);
        }
        sheet.getRange(2,1,getFinal.length,getFinal[0].length).setValues(getFinal);
    }

标签: google-apps-scriptgoogle-sheets

解决方案


推荐阅读