是否可以在iframe中嵌入HTMLService应用程序?
嵌入式示例:http://jsbin.com/axesex/1/edit
该应用可以嵌入Google网站,但不能嵌入任何其他标准网页。控制台抛出错误......
拒绝在一个框架中显示“https://script.google.com/a/macros/netpremacy.com/s/AKfycbxITmxBMsHIh_u82tbvfICzNesEUJh2MRe7izyDE9cgvaLPCZI/exec”,因为它将“X-Frame-Options”设置为“SAMEORIGIN”。
如果您需要更多信息,请告诉我们。
答案 0 :(得分:3)
2017年3月24日更新
是的,但您需要在输出上设置一个额外的标志,以允许它为IFRAMEd:
// Serve HTML with no X-Frame-Options header (in Apps Script server-side code).
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
答案 1 :(得分:0)
看来你可以使用setxframeoptionsmodemode:
来做到这一点//-- Serve HTML with no X-Frame-Options header (in Apps Script server side code).
var output = HtmlService.createHtmlOutput('<b>Hello, world!</b>');
output.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
可以在以下方面阅读更多相关信息: https://developers.google.com/apps-script/reference/html/html-output#setxframeoptionsmodemode
答案 2 :(得分:-2)
可能的等价物可能是使用JSONP。基本上修改Google Apps脚本以输出JSON(文本/ javascript mime类型),该JSON作为参数传递给函数(您将在客户端创建。应用程序脚本的输出将如下所示:< / p>
client_side_handler(JSON HERE...);
在您的客户端页面中,您将拥有类似以下内容的脚本:
function client_side_handler(json){
//make all my wildest dreams come true here.
}
要调用apps脚本,您将拥有另一个脚本标记,将app脚本指定为src。值得庆幸的是,脚本标签没有iframe所具有的跨站点限制。