Apps 脚本 API 未将数据粘贴到 Google 表格中
Apps Script API not pasting data into Google Sheets
我正在尝试通过从我的 Chrome 分机中调用它来执行该函数。我可以在我的 "My Executions" 中看到 chrome 扩展调用了该函数,但它没有将数据粘贴到 Google 表格中。
- 当我尝试直接从脚本编辑器 运行 该功能时,它正在运行。
来自 Chrome 分机的函数调用
post({ 'url': 'https://script.googleapis.com/v1/scripts/' + SCRIPT_ID + ':run',
'callback': executionAPIResponse,
'token': token,
'request': {
'function': 'setData',
'parameters': { 'data': JSON.parse(exec_data.value) },
}
});
脚本编辑器代码
function setData(parameters) {
try {
var doc = SpreadsheetApp.openById(DOC_ID);
var sheet = doc.getSheets()[0];
var data = parameters.data;
sheet.getRange(1, 1, data.length, data[0].length).setValues(data);
return {"status":"ok", 'doc':doc.getUrl()};
} catch(e){
// if error return this
Logger.log(e);
return {"status": JSON.stringify(e)};
}
}
我将 Apps 脚本项目部署为 "API Executable." 我想知道,我在脚本编辑器中部署应用程序的方式有问题吗?
getActiveSpreadsheet()
仅适用于绑定到电子表格的脚本项目,并且只能访问包含脚本项目的电子表格。
使用openByUrl(url)
或openById(id)
代替上述方法
我发现了我犯的错误。实际上代码是正确的,但是在部署为 API 可执行文件时,您必须在更改代码时始终将版本更改为新版本
我正在尝试通过从我的 Chrome 分机中调用它来执行该函数。我可以在我的 "My Executions" 中看到 chrome 扩展调用了该函数,但它没有将数据粘贴到 Google 表格中。
- 当我尝试直接从脚本编辑器 运行 该功能时,它正在运行。
来自 Chrome 分机的函数调用
post({ 'url': 'https://script.googleapis.com/v1/scripts/' + SCRIPT_ID + ':run',
'callback': executionAPIResponse,
'token': token,
'request': {
'function': 'setData',
'parameters': { 'data': JSON.parse(exec_data.value) },
}
});
脚本编辑器代码
function setData(parameters) {
try {
var doc = SpreadsheetApp.openById(DOC_ID);
var sheet = doc.getSheets()[0];
var data = parameters.data;
sheet.getRange(1, 1, data.length, data[0].length).setValues(data);
return {"status":"ok", 'doc':doc.getUrl()};
} catch(e){
// if error return this
Logger.log(e);
return {"status": JSON.stringify(e)};
}
}
我将 Apps 脚本项目部署为 "API Executable." 我想知道,我在脚本编辑器中部署应用程序的方式有问题吗?
getActiveSpreadsheet()
仅适用于绑定到电子表格的脚本项目,并且只能访问包含脚本项目的电子表格。
使用openByUrl(url)
或openById(id)
我发现了我犯的错误。实际上代码是正确的,但是在部署为 API 可执行文件时,您必须在更改代码时始终将版本更改为新版本