【发布时间】:2020-10-28 02:10:27
【问题描述】:
我正在尝试使用 google API 更改我的 google 电子表格的可访问性权限,我已经使用我的 google 服务帐户使用 google API 创建了它。
我还可以将它的所有权授予其他电子邮件地址并让我自己继续编辑吗?
生成代码(我使用的是node js):-
const client = new google.auth.JWT(
keys.client_email,
null,
keys.private_key,
['https://www.googleapis.com/auth/spreadsheets']
);
client.authorize((err, tokens) => {
if (err) {
console.log('sheet auth err', err);
return;
}
console.log('success auth');
});
app.post('/generateSheet', async (req, res, next) => {
const { userId, sheetName } = req.body;
console.log(userId, sheetName);
// return res.redirect('/');
const integrationName = 'Google_Sheets';
const data = req.body;
try {
// const integrationInfoSnapshot = await db
// .doc(`integrationParameters/${integrationName}`)
// .get();
try {
const gsapi = google.sheets({
version: 'v4',
auth: client,
});
request_ = {
resource: {
properties: {
title: sheetName
}
}
}
const response = await gsapi.spreadsheets.create(request_);
// GIVE SPREADSHEET OWNERSHIP TO SOME OTHER EMAIL ADDRESS AND KEEP EDITING ACCESS TO MY SELF
console.log(response);
} catch (e) {
console.log(`Error while creating google sheet for user: ${userId}: `, e);
}
} catch (e) {
console.log(`Error while activating integration for user: "${userId}": `, e);
res.status(500).send({ message: e.message });
}
});
如果有人能回答,那将是一个很大的帮助。请帮忙!!!
【问题讨论】:
标签: node.js google-api google-drive-api google-sheets-api google-api-nodejs-client