google-apps-script - 传递 doGet 参数
问题描述
我想以所有者权限运行锁定和解锁。锁定功能有效,但解锁功能无效。我是否正确发送了 id 参数?有人可以告诉你出了什么问题吗?如果可以吗?脚本阻止和解锁也可以吗?
function doGet(e){
var id = e.parameter.id;
//block
if(id == 1){
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('D10').activate();
var protection = spreadsheet.getActiveSheet().protect();
protection.addEditors(['user1@email.com']);
spreadsheet.getRange('A1').activate();
protection.removeEditors(['user2@email.com', 'user3@email.com']);
} else if (id == 2) {
//unlock
var spreadsheet = SpreadsheetApp.getActive();
spreadsheet.getRange('E19').activate();
var allProtections = spreadsheet.getActiveSheet().getProtections(SpreadsheetApp.ProtectionType.SHEET);
var protection = allProtections[0];
protection.remove();
}
return ContentService.createTextOutput();
};
function block() {
UrlFetchApp.fetch('https://script.google.com/macros/s/###################################################/exec?id=1', {headers: {authorization: "Bearer " + ScriptApp.getOAuthToken()}});
}
function unlock() {
UrlFetchApp.fetch('https://script.google.com/macros/s/###################################################/exec?id=2', {headers: {authorization: "Bearer " + ScriptApp.getOAuthToken()}});
}
解决方案
推荐阅读
- swift - 在某些情况下,找不到完成的 Firebase swift write(toFile:) 文件
- command-line - 如何使用 ctest 将参数传递给 memcheck?
- c++ - 输入有效的双输入 C++
- django - 在 Django 中调试查询集
- ios - 如何在 Xcode 中使用带有 api 密钥的 api?
- java - apache poi - 多次循环同一个数组
- python - 使用一系列列表中的每个后续项目创建一个唯一列表
- javascript - Javascript 提交表单未提交
- python - Python - 何时使用 ()
- sql - 有没有自然左外连接之类的东西