我的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
答案 0 :(得分:0)
由于您的html已加载到iframe中,因此您应该使用
window.top.location = url
加载到顶部框架中。