Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/420.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何获取谷歌应用程序脚本的文本内容?_Javascript_Text_Google Apps Script - Fatal编程技术网

Javascript 如何获取谷歌应用程序脚本的文本内容?

Javascript 如何获取谷歌应用程序脚本的文本内容?,javascript,text,google-apps-script,Javascript,Text,Google Apps Script,目标是从Google Drive获取所有脚本类型的文件;&在循环中,逐个获取它们的文本内容 我的代码是: function searchFiles() { //https://developers.google.com/apps-script/reference/base/mime-type var type = MimeType.GOOGLE_APPS_SCRIPT; var files = DriveApp.getFilesByType(type); while (files

目标是从Google Drive获取所有脚本类型的文件;&在循环中,逐个获取它们的文本内容

我的代码是:

function searchFiles() {
  //https://developers.google.com/apps-script/reference/base/mime-type
  var type = MimeType.GOOGLE_APPS_SCRIPT;
  var files = DriveApp.getFilesByType(type);
  while (files.hasNext()) {
    var file = files.next();
    process(file);
  }
}
function process(file){
  //https://developers.google.com/apps-script/reference/base/mime-type
  var txt = file.getBlob(PLAIN_TEXT);
  Logger.log(txt);
}
我从file.getBlob()中得到的错误是:
不支持从application/vnd.google-apps.script转换为application/pdf。

我还尝试了FetchURL for
file.getUrl()
,但是如果我在登录的同一个窗口中打开文件,也会得到整个文件的HTML&如果以匿名方式打开,则返回错误页面HTML

是否可以在Google Apps脚本中获取脚本文件的文本内容?

Flow:
  • 通过MIME获取所有脚本文件
  • 获取每个文件的id
  • URL通过驱动器REST API或应用程序脚本API获取它
脚本: 参考资料:
流量:
  • 通过MIME获取所有脚本文件
  • 获取每个文件的id
  • URL通过驱动器REST API或应用程序脚本API获取它
脚本: 参考资料:

根据我的尝试,您不可能使用
UrlFetchApp.fetch(“scriptURL”)
和获取
html
内容。根据我的尝试,您不可能使用
UrlFetchApp.fetch(“scriptURL”)
和获取
html
内容。
function getScriptSourceCode(fileid) {
  var params = {
    headers: { Authorization: 'Bearer ' + ScriptApp.getOAuthToken() },
    followRedirects: true,
    muteHttpExceptions: true,
  };
  var url =
    'https://script.google.com/feeds/download/export?id=' +
    fileid +
    '&format=json';
  var response = UrlFetchApp.fetch(url, params);
  var json = JSON.parse(response);
  for (var file in json['files']) {
    Logger.log(json['files'][file]['source']); //Source code
  }
}