错误:[$ sce:insecurl]

时间:2017-02-02 20:04:29

标签: angularjs controller servicenow

我正在ServiceNow中创建一个Map小部件并遇到错误:[$ sce:insecurl]。

我的HTML:

<div class="fluidMedia">
<iframe ng-src="{{data.src}}" class="media"></iframe>
</div>

服务器脚本:

var gr = new GlideRecord('cmn_location');
gr.addQuery('sys_id', gs.getUser().getLocation());
gr.query();
if(gr.next())
{
var loc = gr.street.getHTMLValue();
}

loc1 = loc.replace(/,/g, "");
loc2 = loc1.replace(/ /g, "+");

data.src = "https://www.google.com/maps/embed/v1/place?key=AIzaSyCmoLpiJFrdXLLUYsM3PRfPD0zQ0uATAUw&q=" + loc2;

客户控制器:

function($scope,$sce) {
    var c= this;
        c.server.get({name: "test"}).then(function(r) {
            c.data.src = $sce.trustAsResourceUrl(r.data.src);
        });
 } 

有没有人遇到过这个?如何更改角度js以适应这种情况?对不起,如果这是一个愚蠢的问题,我对angular js来说是全新的。

谢谢!

1 个答案:

答案 0 :(得分:0)

尝试通过whitelist of urls将此网址添加到$sceDelegateProvider。另请阅读this了解更多详情。