2016-07-04 79 views
1

我是新來的離子,我想用離子1創建一個應用程序。 除ng-src中的視頻網址外,一切正常。這裏是我的代碼離子iframe ng-src youtube視頻鏈接不工作

$scope.trustSrc = function(src) { 
    return $sce.trustAsResourceUrl(src); 
    } 
<iframe width="100%" height="315" ng-src="{{trustSrc(guide.video_url)}}" frameborder="0" allowfullscreen></iframe> 

拒絕顯示 'youtube.com/watch?v=4me16JMuBbs';在一個框架,因爲它設置「X-框架 - 選項」到「SAMEORIGIN」

+0

什麼是錯誤? –

+0

@WasiqMuhammad這是我正在拒絕在框架中顯示'https://www.youtube.com/watch?v=4me16JMuBbs'的錯誤,因爲它將'X-Frame-Options'設置爲'SAMEORIGIN'。 – user1955726

回答

2

您應修改您的視頻網址的嵌入式版本:

這是您的網址不工作,因爲YouTube沒有按」牛逼允許將其嵌入到iframe

youtube.com/watch?v=4me16JMuBbs 

這是正確的URL

youtube.com/embed/4me16JMuBbs 

對於的YouTube你能做到這樣(你應該測試,如果每個URL有相同的格式)

url.replace('watch?v=', 'embed/') 

對於Vimeo的你能做到這樣(你應該測試它太):

url.replace('vimeo.com', 'player.vimeo.com/video') 
+0

數據來自數據庫,用戶可以上傳任何youtube或vimeo網址 – user1955726

+0

我想我必須轉換控制器中的網址...讓我試試...謝謝 – user1955726

0

試試這個

<iframe width="100%" height="315" ng-bind-html="trustAsResourceUrl" frameborder="0" allowfullscreen></iframe> 


in your controller first add `'$sce' then 

$scope.trustSrc = function(src) { 
$scope.trustAsResourceUrl = $sce.trustAsHtml(//Your URL code); 

} 

OR

<iframe width="100%" height="315" src="{{trustAsResourceUrl}}" frameborder="0" allowfullscreen></iframe>