Tec*_*nic 8 javascript iframe same-origin-policy google-apps-script google-apps-script-web-application
我正在尝试将使用Google Apps脚本中的Javascript动态构建的页面嵌入到我的iFrame网站中,但iFrame的内容未显示.Google Apps脚本具有同源策略,可防止其加载.
我想要做的是(我删除了完整的链接):
<iframe src="https://script.google.com/a/macros/SCRIPT_ID"></iframe>
Run Code Online (Sandbox Code Playgroud)
我得到的错误是:
Refused to display 'https://script.google.com/a/macros/SCRIPT_ID'
in a frame because it set 'X-Frame-Options' to 'SAMEORIGIN'.
Run Code Online (Sandbox Code Playgroud)
有没有办法改变策略并加载iFrame中的内容?
Dmi*_*try 15
谷歌刚刚启用了此功能.它已经在很长一段时间内处于"功能请求"状态.链接在这里
您现在可以显式定义X-Frame-Options.
要允许在另一个域下嵌入,该选项应为HtmlService.XFrameOptionsMode.ALLOWALL
有关此主题的Google文档:
例:
function doGet() {
return HtmlService.createTemplateFromFile('form.html')
.evaluate() // evaluate MUST come before setting the Sandbox mode
.setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL);
}
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!
我在 doPost 响应表单上遇到了这个问题,只有在开发模式下,并通过在初始 doGet 表单上将 target="_self" 更改为 target="_top" 来纠正它。
<form method="POST" id="ss-form" target="_top" action="<?!=SETTINGS.PUBLISHED_URL?>">
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7640 次 |
| 最近记录: |