我有一个谷歌工作表,我可以通过访问服务帐户来阅读谷歌工作表.下面是用于阅读的代码片段.
// configure a JWT auth client
let jwtClient = new google.auth.JWT(
privatekey.client_email,
null,
privatekey.private_key,
['https://www.googleapis.com/auth/spreadsheets',
'https://www.googleapis.com/auth/drive']);
//authenticate request
jwtClient.authorize(function (err, tokens) {
if (err) {
console.log(err);
return;
} else {
console.log("Successfully connected!");
}
})
// getting data from google sheet
sheets.spreadsheets.values.get({
auth: jwtClient,
spreadsheetId: spreadsheetId,
range: range
}, function (err, response) {
if (err) {
console.log('The API returned an error: ' + err);
} else {
console.log('Users list from Google Sheets:', response.data.values);
}
});
这非常有效,我正在获取数据.但当我想写google sheet时,它会给出一个错误.一段文字
// writing to google sheets
let values = [
[
'abc','b.ed'
],
];
const requestBody = {
values,
};
sheets.spreadsheets.values.update({
spreadsheetId,
range:"Sheet1!C3",
valueInputOption,
requestBody,
}, (err, result) => {
if (err) {
// Handle error
console.log(err);
} else {
console.log('%d cells updated.', result.updatedCells);
}
});
我得到的错误
GaxiosError: Login Required.