CSP离子资源负载受阻

时间:2018-05-14 12:55:59

标签: javascript angular typescript ionic-framework content-security-policy

我正在尝试从另一台PC上的服务加载json格式的资源,但我无法通过并获得CSP错误并且资源没有加载。当我尝试连接到在线源(reddit)时,它运行得很好并且给了我一个json项目。

我的index.html的头

<head>
<meta charset="UTF-8">
<title>Ionic App</title>
<meta http-equiv="Content-Security-Policy"content="default-src 'self' gap://ready file://*http://192.168.201.55:8100data: gap:;style-src 'self' 'unsafe-inline';media-src *;script-src 'self' 'unsafe-inline' 'unsafe-eval'">
<meta http-equiv="Content-Security-Policy"content="default-src 'self' gap://ready file://*http://pc_lesmes:8088data: gap:;style-src 'self' 'unsafe-inline';media-src *;script-src 'self' 'unsafe-inline' 'unsafe-eval'">
<meta name="viewport" content="viewport-fit=cover, width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
<meta name="format-detection" content="telephone=no">
<meta name="msapplication-tap-highlight" content="no">
<link rel="icon" type="image/x-icon" href="assets/icon/favicon.ico">
<link rel="manifest" href="manifest.json">
<meta name="theme-color" content="#4e8ef7">
<!-- add to homescreen for ios -->
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<!-- cordova.js required for cordova apps (remove if not needed) -->
<script src="cordova.js"></script>
<!-- un-comment this code to enable service worker<script>if ('serviceWorker' in navigator) {navigator.serviceWorker.register('service-worker.js').then(() => console.log('service worker installed')).catch(err => console.error('Error', err));}</script>-->
<link href="build/main.css" rel="stylesheet">
</head>

我正在尝试连接到这个pc_lesmes的服务,但我的firefox的控制台显示错误,指出“无效的主机无法解释”和“此页面的选项阻止了pc_lesmes的资源加载”请注意这些不是文字错误代码,但翻译。

为了解决这个问题,我该怎么做?此外,¿您是否知道有关CSP的更多信息的可靠来源?非常感谢您的回答和时间。

编辑:如果你贬低我,请告诉我我做错了什么,因为我没有找到任何相关主题并且我试图遵循这些指导原则。

1 个答案:

答案 0 :(得分:0)

我终于通过将CSP设置为仅报告来解决它。由于CORS,我仍然无法访问json,但我认为这是服务器端的。我会要求服务的所有者输入CORS标头。