Google协作平台HTML iframe(不是小工具)

时间:2014-10-13 11:24:27

标签: javascript html iframe google-apps-script google-sites

我正在尝试在google网站中嵌入一个google驱动器文件夹,但此文件夹只会向某些用户显示。这就是为什么我不能使用Insert - >驱动器 - >文件夹中。

我在这篇文章stackoverflow中发现您可以使用HTML Iframe显示一个specift文件夹,并且它可以很好地工作。

现在我正试图在我的Google网站上嵌入iframe而没有运气。我尝试了3种不同的方式:

1)使用 HTML框(插入 - > HTML框)

返回以下内容: 删除标记iframe上的不允许属性src

我使用完全相同的html代码,效果很好

<iframe src="https://drive.google.com/embeddedfolderview?id=0B9xgK9AXrIuiMS0xNTQ5MzZjNy0xYTAxLTQzMjQtYWVkOS03M2Q3YWQxMzVhN2I#list" width="800" height="600" frameborder="0"></iframe>

2)使用HTML服务(Google Apps脚本)

我创建了一个像这样的Google脚本:

Code.gs

function doGet() {
  return HtmlService.createHtmlOutputFromFile('index');
}

index.html

<html>
  <body>
    <p>Hello Stackoverflow</p>
    <iframe src="https://drive.google.com/embeddedfolderview?id=0B9xgK9AXrIuiMS0xNTQ5MzZjNy0xYTAxLTQzMjQtYWVkOS03M2Q3YWQxMzVhN2I#list" width="800" height="600" frameborder="0"></iframe>
  </body>
</html>

这只显示“Hello stackoverflow”和iframe应该在的空间。

3)插入 - &gt;更多小工具 - &gt;包含小工具(iframe)

这个与我在其他方法中使用的URL相同:https://drive.google.com/embeddedfolderview?id=0B9xgK9AXrIuiMS0xNTQ5MzZjNy0xYTAxLTQzMjQtYWVkOS03M2Q3YWQxMzVhN2I#list

但这种方式对我来说毫无用处,因为我需要控制哪些用户可以在Google网站内看到Google云端硬盘文件夹。

请注意,它与http或https或Google Chrome上的屏蔽按钮无关,因为我使用的是https网址。

3 个答案:

答案 0 :(得分:1)

尝试以下Apps脚本代码

code.gs

Stack

的index.html

    function doGet(e) {
    var template = HtmlService.createTemplateFromFile('Index');
    return template.evaluate()
    .setTitle('Web App Search Page')
    .setSandboxMode(HtmlService.SandboxMode.IFRAME)
    .addMetaTag('viewport', 'width=device-width, initial-scale=1')
    .setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL)
}

部署为网络应用并使用&#34; exec&#34;链接

答案 1 :(得分:0)

您是否尝试过沙盒以及我们提供的HTML服务的不同模式?

   function doGet() {
  return HtmlService.createHtmlOutputFromFile('index').setSandboxMode(HtmlService.SandboxMode.IFRAME);
}

https://developers.google.com/apps-script/guides/html/restrictions#sandbox_mode

答案 2 :(得分:-1)

不确定这是否有效,但首先访问该文件夹的共享设置并确保&#34;所有拥有该链接的人都可以访问&#34;。

然后重试插入&gt; Google云端硬盘