我有一個簡單的介紹是這樣NG綁定,HTML不加載圖片src
<div id="{{item.id}}" ng-repeat="item in itemList">
<div ng-bind-html="item.html"></div>
</div>
的item.html包含HTML這樣的:
<a href="http://www.youtube.com"><img src="icons/youtube.png" alt="Youtube"/></a>
然而,得到的HTML不加載圖像:
<a href="http://www.youtube.com"><img alt="Youtube"/></a>
經過一番搜索,看起來像angularjs這樣做,以避免跨站點腳本,但我是ab從而直接從YouTube上加載圖像。
<a href="http://www.youtube.com"><img src="http://img.youtube.com/vi/9bZkp7q19f0/0.jpg" alt="Youtube"/></a>
此外,我能夠通過使用ng-bind-html-unsafe加載所有圖像。
<div id="{{item.id}}" ng-repeat="item in itemList">
<div ng-bind-html-unsafe="item.html"></div>
</div>
如果我使用ng-bind-html-unsafe,我不需要ngSanitize模塊了,這意味着我的代碼不太安全?我確實使用了從外部來源加載圖像的情況。
來到我的問題:
是什麼NG綁定,html和NG綁定,HTML不安全除了我上面提到的區別。有沒有關於這方面的文件?我找不到任何東西。
如何完成從主機服務器和外部服務器加載映像,而不必使用不安全的指令?
謝謝!
我更換了URI從圖標/ youtube.png完整網址HTTP://localhost/test/icons/youtube.png,我能夠用NG綁定,HTML。現在我注意到另一個奇怪的副作用。使用清理版本從item.html中包含的div中刪除嵌入式樣式信息。 – pkrish
查看$ sanitize文檔,看起來像這是設計。但我不明白爲什麼。 – pkrish