Google Sheet Api get函数在Node.js中返回未定义的值 [英] Google Sheet Api get function returning undefined value in nodejs

查看:75
本文介绍了Google Sheet Api get函数在Node.js中返回未定义的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

function changeData(auth,sheetId) {
  var sheets = google.sheets('v4');
  sheets.spreadsheets.values.update({
    auth: auth,
    spreadsheetId: sheetId,
    range: 'Sheet1!D6', 
    valueInputOption: "USER_ENTERED",
    resource: {
      values: [ ["abc"] ]
    }
  }, (err, response) => {
    if (err) {
      console.log('The API returned an error: ' + err);
      return;
    } else {
        console.log("Appended");
    }
  });
}

我可以使上面的函数起作用,并且它可以很好地更改值,但是下面的函数不返回值,并说检索到0行.我在做什么错了?

I can get the above function to work and it changes the value just fine but the below function doesnt return value and says 0 rows retrieved. what am i doing wrong?

function read(auth,sheet_id)
    {
      var sheets = google.sheets('v4');
        sheets.spreadsheets.values.get({
        auth: auth,
        spreadsheetId: sheet_id,
        range: 'Sheet1!D6'
      }, function(err, result) {
        if(err) {
          // Handle error
          console.log(err);
        } else {
          var numRows = result.values ? result.values.length : 0;
          console.log('%d rows retrieved.', numRows);
        }
      });
    }

推荐答案

如果在v26.0.1版本(现在为32.0.0.)之后使用googleapis,则可以在脚本中通过.那么下面的修改如何?

If you are using googleapis after the version of v26.0.1 (now it's 32.0.0.), in your script, you can retrieve the data by result.data. So how about the following modification?

var numRows = result.values ? result.values.length : 0;

收件人:

var numRows = result.data.values ? result.data.values.length : 0;

这篇关于Google Sheet Api get函数在Node.js中返回未定义的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆