【问题标题】:Firebase hosting gives error Error: could not handle the requestFirebase 托管给出错误错误:无法处理请求
【发布时间】:2018-06-28 15:17:32
【问题描述】:

我使用 firebase 托管 是为了使用 node js API 获取谷歌电子表格数据。如果我获取 1000 行,它工作得很好,但是当我获取 10000 时,它给我错误 Error: could not handle the request

下面是 1000 请求的 url https://us-central1-valuemyplace-1525346661329.cloudfunctions.net/app/spreadsheet

下面是10000请求的url https://us-central1-valuemyplace-1525346661329.cloudfunctions.net/app/test

这是我的代码

function listMajors(auth) {
  const sheets = google.sheets({version: 'v4', auth});
  sheets.spreadsheets.values.get({
    spreadsheetId: '1Lpbx-LQQTh-lF2E1lQmPnqZhvT2bWfQ9gxBX-qGBz_M',
    range: 'A1:P120933',
    //valueRenderOption: 'UNFORMATTED_VALUES'
    //majorDimension: 'COLUMNS'
  }, (err, {data}) => {
    if (err) return console.log('The API returned an error: ' + err);
    const rows = data.values;
    if (rows.length) {
      rows.map((row) => {
        const zipObj = (arr1, arr2, obj) => {
          if (arr1.length === 0 || arr2.length === 0) { return 0; }
          obj[arr1[0]] = arr2[0];
          return zipObj(arr1.slice(1), arr2.slice(1), obj);
        }

        const ress = [];

        for (let i = 1; i < rows.length; i++) {
          let obj = {};
          zipObj(data.values[0], data.values[i], obj);
          ress.push(obj);
        }

        //console.log(res);
        firebase.database().ref().set(ress);
        res.send(ress);
       // console.log(row.length);
      });
    } else {
      console.log('No data found.');
    }
  });
}

请帮我解决这个问题。提前致谢。

【问题讨论】:

  • 这些 URL 看起来像是您使用的是 Cloud Functions,而不是 Firebase 托管。
  • 它在本地主机上运行良好,但是当我部署到主机时它给了我错误。
  • @DougStevenson 但它适用于 1000 行请求。为什么它不适用于10000?即使它可以在 localhost 机器上运行。
  • 所以这是一件有趣的事情。 1000 行的请求给了我一个错误,但是 10,000 行的请求可以正常工作。
  • @Jay 在第一个链接上我获取了 10,000 行,在第二个链接上我错误地获取了 1000 现在检查。如果你知道如何解决这个问题,请帮助我。

标签: node.js firebase


【解决方案1】:

我自己解决了

function listMajors(auth) {
  const sheets = google.sheets({version: 'v4', auth});
  sheets.spreadsheets.values.get({
    spreadsheetId: '1Lpbx-LQQTh-lF2E1lQmPnqZhvT2bWfQ9gxBX-qGBz_M',
    range: 'A1:P120933',
    //valueRenderOption: 'UNFORMATTED_VALUES'
    //majorDimension: 'COLUMNS'
  }, (err, {data}) => {
    if (err) return console.log('The API returned an error: ' + err);
    const rows = data.values;
    if (rows.length) {
      ** //rows.map((row) => {** *Do comment here*
        const zipObj = (arr1, arr2, obj) => {
          if (arr1.length === 0 || arr2.length === 0) { return 0; }
          obj[arr1[0]] = arr2[0];
          return zipObj(arr1.slice(1), arr2.slice(1), obj);
        }

        const ress = [];

        for (let i = 1; i < rows.length; i++) {
          let obj = {};
          zipObj(data.values[0], data.values[i], obj);
          ress.push(obj);
        }

        //console.log(res);
        firebase.database().ref().set(ress);
        res.send(ress);
       // console.log(row.length);
      **//});** *Comment Here*
    } else {
      console.log('No data found.');
    }
  });
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-04-20
    • 1970-01-01
    • 2018-01-17
    • 2022-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-10
    相关资源
    最近更新 更多