Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 科尔多瓦网址';s和图像src具有';不安全';Windows中url的前面_Angularjs_Cordova_Windows 10 - Fatal编程技术网

Angularjs 科尔多瓦网址';s和图像src具有';不安全';Windows中url的前面

Angularjs 科尔多瓦网址';s和图像src具有';不安全';Windows中url的前面,angularjs,cordova,windows-10,Angularjs,Cordova,Windows 10,我正在用Angular开发Cordova应用程序,我正在为Windows开发一些东西 我正在尝试这样的事情: <img ng-src="{{dataDirectory + buildingPhoto.FilenamePhoto}}" class="full-width"> 我还在我的index.html中添加了这个元标记: <meta http-equiv="Content-Security-Policy" content="ms-appdata *; default-src

我正在用Angular开发Cordova应用程序,我正在为Windows开发一些东西

我正在尝试这样的事情:

<img ng-src="{{dataDirectory + buildingPhoto.FilenamePhoto}}" class="full-width">
我还在我的index.html中添加了这个元标记:

<meta http-equiv="Content-Security-Policy" content="ms-appdata *; default-src *; img-src *; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval'" />


但它不起作用,所以我有点困在这里,希望有人能把我推向正确的方向。

经过几天的搜索,我终于找到了解决问题的方法。
我所做的一切都是正确的。唯一的问题是,我在app.js中应用了所有这些,而在router.js中,所有内容都被不同的代码覆盖


教训:在应用修补程序之前,请始终检查angular应用程序在其他文件中是否有配置,然后使用以下代码修复此问题:

$compileProvider.imgSrcSanitizationWhitelist(/^\s*(https?|ftp|file|content|blob‌​|ms-appx|ms-appdata|x-wmapp0|unsafe|local):|data:image\//);

还要确保在app.js中的初始设置之后,$compileProvider不会被其他任何地方覆盖,这实际上导致了Joris的问题。

这是最好的解决方案

myApp.config(['$compileProvider', function ($compileProvider) {
    $compileProvider.imgSrcSanitizationWhitelist(/^\s*(https?|ftp|file|chrome-extension|ms-appx-web|ms-appx):|data:image\//);
    $compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|file|chrome-extension|ms-appx-web|ms-appx):/);
}]);

$compileProvider.imgsrcsanitationwhitelist(/^\s*(https?| file | ms appx web):/)
对我有效,所以可能尝试添加
ms appx web
…尝试您的线路,但似乎不起作用。但我不明白,因为我还尝试将| ms appdata添加到正则表达式中,而正则表达式看起来是正确的。我对此一无所知。嗯,你编译的windows版本是什么?您可以添加相应的标签…Windows 10 x64。如何添加相应的标签?我添加了windows-10标签,希望我的编辑能够获得批准;)从这个问题中,我们又学到了一个教训。始终确保在问题中发布完整的代码,以阻止所有角落案例场景。对于悬赏任务来说,这也是非常必要的,因为它得到了很多关注。不管怎样,很高兴你破解了它。干杯
$compileProvider.imgSrcSanitizationWhitelist(/^\s*(https?|ftp|file|content|blob‌​|ms-appx|ms-appdata|x-wmapp0|unsafe|local):|data:image\//);
myApp.config(['$compileProvider', function ($compileProvider) {
    $compileProvider.imgSrcSanitizationWhitelist(/^\s*(https?|ftp|file|chrome-extension|ms-appx-web|ms-appx):|data:image\//);
    $compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|file|chrome-extension|ms-appx-web|ms-appx):/);
}]);