Google Script是否有办法使用文档密钥请求访问Google表格?我已经尝试openById()
并希望它能触发请求,但是没有...
答案 0 :(得分:0)
我找到了一种似乎对我有用的方法,但我会注意到它没有记录,因此既不支持也不推荐,我想它可能随时都会改变。 / p>
它需要与服务器进行OAuth2身份验证请求,因此涉及许多步骤:
在文件>下项目属性>范围,检查是否列出了以下范围:
var foobar = [{param1: 'value1'}, {param2: 'value2'}];
foobar.pop();
console.log(foobar)
如果没有列出,则运行一个简单的调用,如:
https://www.googleapis.com/auth/drive
应提示您允许访问云端硬盘。完成后,您可以从脚本中删除此行。
确认现在列出了所需的云端硬盘范围。
此示例功能对我有用,但是YMMV:
DriveApp.createFile('', '');
使用您希望请求访问的电子表格的ID调用function requestShare(spreadsheetId) {
var request = {
requestType: 'requestAccess',
itemIds: spreadsheetId,
foreignService: 'explorer',
shareService: 'explorer',
authuser: 0
};
var url = 'https://docs.google.com/sharing/commonshare';
var params = {
method: 'POST',
payload: request,
headers: {
Authorization: 'Bearer ' + ScriptApp.getOAuthToken()
},
contentType: 'application/x-www-form-urlencoded'
};
var response = UrlFetchApp.fetch(url, params);
Logger.log(response.getContentText());
}
函数。
我在两个帐户之间进行了测试,并收到了共享请求电子邮件,点击后会显示带有正确请求者详细信息的对话框。
希望这有帮助。