插入BigQuery表时,偶尔会出现401“无效凭证”错误

时间:2019-03-28 23:35:31

标签: node.js google-cloud-platform google-bigquery

我有一个node.js应用程序,该应用程序可写入BigQuery中的表。在大多数情况下,它都能正常工作,但偶尔会出现401“无效凭据”错误。

我正在使用服务帐户。

const BigQuery = require('@google-cloud/bigquery');

let bigQuery;
new BigQuery({ keyFilename: __dirname + '/big_query.json', projectId: config.google.project_id_prod });

const insertToBigQuery = (dataSet, table, object) => {
  return new Promise((resolve, reject) => {
    if (config.releaseType === config.releaseTypeEnum.DEVELOPMENT || config.releaseType === config.releaseTypeEnum.STAGING) {
      logger.info(`Insert started to BigQuery. Dataset - ${dataSet} Table - ${table}`);
    }
    bigQuery.dataset(dataSet).table(table).insert(object, { ignoreUnknownValues: false })
      .then(() => {
        resolve({ insertedWithError: false });
      })
      .catch(err => {
        bigQuery.dataset(dataSet).table(table).insert(object, { ignoreUnknownValues: true })
          .then(() => {
            resolve({ insertedWithError: true, err: JSON.stringify(err) });
          })
          .catch(err => {
            reject(`ERROR: ${JSON.stringify(err)}`);
          });
      });
  });
};
  

大多数情况下,此代码有效。有时我会收到401“无效凭据”错误

0 个答案:

没有答案