如何在 Angular js 中加载 iframe

Posted

技术标签:

【中文标题】如何在 Angular js 中加载 iframe【英文标题】:How to load an iframe in angular js 【发布时间】:2018-01-16 20:59:57 【问题描述】:

当我放入 iframe 时,它​​显示以下错误,

Refused to display 'my url' in a frame because it set 'X-Frame-Options' to 'DENY, DENY'.I am using this iframe for the first time.


 <iframe src="myurl"></iframe>

谁能帮我看看这个情况。

我的 ctrl,

$scope.trustSrc = function(src) 
  return $sce.trustAsResourceUrl(src);

我的html

<iframe ng-src="trustSrc(https://www.w3schools.com)"></iframe>

【问题讨论】:

显示控制器代码 How to set an iframe src attribute from a variable in AngularJS的可能重复 【参考方案1】:

您可以定义一个函数并将 url 传递给它,

$scope.trustSrc = function(src) 
        return $sce.trustAsResourceUrl(src);

在 HTML 中

<iframe ng-src="trustSrc(myurl)"></iframe>

注意:您需要将 '$sce' 作为参数注入控制器。

演示

var app = angular.module('myApp',[]);
app.controller('myCtrl',function($scope,$sce)
$scope.trustSrc = function(src) 
  return $sce.trustAsResourceUrl(src);

)
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<body ng-app="myApp">
<div ng-controller="myCtrl">
<iframe     ng-src="trustSrc('http://www.espncricinfo.com/')"></iframe>
</div>
</body>

【讨论】:

嗨,sajeetharan。它不起作用我编辑了我的代码,你可以检查一下。 查看附件或plnkr.co/edit/YlWzMyMZcwcLXHLsIQcZ?p=preview ,它在你的例子中对我有用,但是当我输入我的网址时,它说错误拒绝在框架中显示'myurl',因为它将'X-Frame-Options'设置为'DENY,DENY '。

以上是关于如何在 Angular js 中加载 iframe的主要内容,如果未能解决你的问题,请参考以下文章

在 Angular JS 中检索 Iframe 内的数据绑定值

如何在 div 中加载外部 Angular 应用程序? [关闭]

如何阻止网站在 iframe 中加载?

如何通过 AJAX 在 div 中加载 iFrame

如何使用 Jquery 在 iframe 中加载 url

在 Angular-fullstack 中加载 local.env.js