我有一个在 VSTS 中添加自定义 TAB 的扩展,请参见下图
它在 Chrome 中工作得很好,但在 IE 中则不然,请参阅下图以了解结果:
这是我的扩展中的代码:
<script type="text/javascript">
VSS.init();
VSS.ready(function () {
var webContext = VSS.getWebContext();
var projectName = webContext.project.name;
var assetFrame = document.getElementById("assetFrame");
assetFrame.src = "https://samplewebsite.net/Home/Asset/" + projectName;
VSS.notifyLoadSucceeded();
});
</script>
<div id="rtlTabBody">
<iframe id="assetFrame" style="width:100%" frameborder="0"></iframe>
</div>
我需要在代码或 VSTS 本身中配置某些内容才能允许 iframe 吗?
最佳答案
您尝试嵌入的网站的内容安全策略 (CSP) 似乎已将其自身配置为不允许将其嵌入到其他网站中。
它要么指定:
frame-ancestors 'none'
或者它是较旧的等效项:
X-Frame-Options: DENY
我怀疑是后者,因为 X-Frame-Options 已被弃用,取而代之的是 CSP and Chrome only partially implements it .
关于javascript - 如何在 VS Team Service 自定义选项卡中允许 IFRAME,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38136041/