Apps Script API未将数据粘贴到Google表格中

时间:2019-03-31 17:02:10

标签: google-apps-script google-chrome-extension deployment google-sheets google-apps-script-api

我正在尝试通过Chrome扩展程序调用该函数。我可以在“我的执行”中看到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可执行文件”。我想知道,我在脚本编辑器中部署应用程序的方式有问题吗?

2 个答案:

答案 0 :(得分:0)

number letter abs.score.dif rel.score.dif 1 6 e 0 0 2 6 n 0 0 3 7 g 1 -1 仅适用于绑定到电子表格的脚本项目,并且只能访问包含脚本项目的电子表格。

使用getActiveSpreadsheet()openByUrl(url)

代替上面的方法

答案 1 :(得分:0)

我发现我犯的错误。实际上代码是正确的,但是在以API可执行文件进行部署时,必须在更改代码后始终将版本更改为新版本。