如何从Google表格的脚本中阅读Google文档的内容?

时间:2016-08-08 05:36:04

标签: google-apps-script google-sheets authorization google-docs

我正在尝试使用Google App Script(GAS)。我的表格附有code.gs。我正在获取价值并将其他地方发送给我。在表单的一个特定列中,我有Google Doc的URL,其中包含其他信息。

因此,如果我要阅读N行,我必须阅读N个相应Google文档的内容。我可以通过某种方式在表单附带的code.gs内打开并阅读这些Google文档吗?

修改

我发现使用DocumentApp类,我可以阅读google doc的内容。以下代码对我来说很好。

function myFunction() {      
  var doc = DocumentApp.openByUrl("https://docs.google.com/document/<ID>");
  var body = doc.getBody();
  // I had a table in all the docs. They are uniform in structure.
  var table= body.getTables()[0];
  // My data was stored in the 10th row.
  var row = t.getRow(10);
  var res = row.getText();

  Logger.log(res);

}

现在我已经碰到了下一个保险杠。 Google Sheet的所有者是SAM。以上代码可以读取SAM拥有的所有Google文档。其中一些不属于SAM。这些都无法阅读。我得到的错误是Execution failed: Action not alloweddoc = DocumentApp.openByUrl(...)。有没有办法解决这个授权问题?

1 个答案:

答案 0 :(得分:2)

这是一项安全限制。 SAM只能阅读那些由他拥有或与他共享的文件。因此,那些不属于SAM的文件必须与文件的实际所有者共享