【问题标题】:BigQuery cannot add data with nodejs APIBigQuery 无法使用 nodejs API 添加数据
【发布时间】:2017-09-13 13:56:50
【问题描述】:

我尝试使用以下云函数示例 link 将 google-cloud-functions 与 BigQuery 结合使用。 我没有任何错误,但数据没有添加到 BigQuery。

BigQuery 响应为(状态 200):

[{ “种类”:“bigquery#tableDataInsertAllResponse”}]

我在本地使用带有谷歌服务帐户的 expressjs 应用程序进行了测试,但得到了相同的响应。

这是我在本地使用的代码:

    function saveLogBigQuery(req, res, status, errors=null){  
 const dataset = bigquery.dataset('logs_functions');  
 const table = dataset.table('testing');

      return table.insert([{
        name:'works!'   }]).then(function(data) {
        console.log("works!");
        console.log(JSON.stringify(data));
        res.send(data);   })
        .catch(function(err) {
          // An API error or partial failure occurred.
          console.log(JSON.stringify(err));
          res.send(err);
        }); }
       router2.get('/places', (req, res) => {   return saveLogBigQuery(req,res,200); });
       router2.listen(3000, function () {   console.log('Example app listening on port 3000!') });

这是我的本地配置:

const bigquery = require('@google-cloud/bigquery')({
  projectId: 'project-id',
  credentials: require('./service-account.json')
});

任何想法,有什么问题?

编辑:

响应:可能是缓存或刷新页面https://bigquery.cloud.google.com/table/project-id,现在是数据:)

【问题讨论】:

  • 验证数据如何显示(或在您的情况下未显示)?
  • 我在bigquery.cloud.google.com/table/project-id 看到昨天我没有任何数据,但现在它是,可能是缓存的东西或刷新数据需要一些时间
  • 您是查看表格预览,还是实际查询数据?
  • 我在看表格预览,这说没有行,但现在显示信息谢谢!

标签: node.js google-bigquery google-cloud-platform google-cloud-functions google-api-nodejs-client


【解决方案1】:

使用表格预览存在一个已知错误。您应该直接查询该表以查看其中是否有数据。

【讨论】:

  • 修复这么难吗? 2018 年仍然面临同样的问题。
猜你喜欢
  • 2022-11-30
  • 2018-05-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-03
相关资源
最近更新 更多