无法阻止Google Apps脚本屏蔽重定向的URL

时间:2019-06-20 12:01:57

标签: redirect google-apps-script web-applications google-docs

我的google apps脚本(附加到google doc)中有一个doGet函数,该函数以网络应用程序的形式发布,我希望将用户重定向到另一个网页。重要的是,我希望将它们重定向到的页面的URL显示在地址栏中,并将它们重定向到的页面的标题作为选项卡的标题(在Chrome中)。

我尝试使用元刷新标签,还设置了window.location.href。两者都可以正确重定向,但是它们会在地址栏中显示地址应用程序的URL,而不是用户重定向到的页面的URL。

下面的脚本(附加到Google文档中)说明了问题。

function doGet(request) {
  var drive = DriveApp;
  var docs = DocumentApp;
  var Id = docs.getActiveDocument().getId();
  var document = docs.openById(drive.getFileById(Id).makeCopy().getId());
  document.setName("Test doc 2");
  var URL = document.getUrl();
  return HtmlService.createHtmlOutput('<meta http-equiv="refresh" content="0; url=' + URL + '" />')
}

将脚本发布为Web应用程序,然后访问URL会将您重定向到新创建的文档,但这是显示在地址栏中的脚本的URL。

有关示例,请参见此Google文档:https://docs.google.com/document/d/1HpBkNGGGjKj3W6QXThtGdniSO_UTANo8LcqmgZowdTQ/edit

1 个答案:

答案 0 :(得分:0)

由于您的html已加载到iframe中,因此您应该使用

window.top.location = url

加载到顶部框架中。