Javascript 尝试从api获取json数据时的Cordova安全策略

Javascript 尝试从api获取json数据时的Cordova安全策略,javascript,jquery,json,api,cordova,Javascript,Jquery,Json,Api,Cordova,这是我在为cordova应用程序执行此jquery时遇到的错误 jquery-1.11.1.min.js:4 Refused to connect to 'https://xxxxxxxx/v1/common/introductions/faqs' because it violates the following Content Security Policy directive: "default-src 'self' data: gap: https://ssl.gstatic.co

这是我在为cordova应用程序执行此jquery时遇到的错误

jquery-1.11.1.min.js:4 Refused to connect to 
'https://xxxxxxxx/v1/common/introductions/faqs' because it 
violates the following Content Security Policy directive: "default-src 
'self' data: gap: https://ssl.gstatic.com 'unsafe-eval'". Note that 
'connect-src' was not explicitly set, so 'default-src' is used as a 
 fallback.
这是我的index.html中的安全策略

$(document).ready(function(){


        $("#FAQS").html("Hello worldss!");
        alert("rajesh");
        $.getJSON("https://xxxxxxxxx/v1/common/introductions/faqs",
        function(result)
        {
            $("#FAQS").html(result['faq'][0]);
            alert("hi");
        })

   });

我在stack overflow中跟踪了许多问题


但是无法显示我的json数据,并且显示了相同的错误。首先,您应该使用较新版本的jquery

其次,您需要在服务器上设置访问策略,以允许用户界面中的COR

在php中,它如下所示:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' 
data: gap: https://ssl.gstatic.com 'unsafe-eval'; connect-src 'self' 
https://xxxxxxxx/v1/common/introductions/faqs; style-src 'self' 
'unsafe-inline'; media-src *">
connect-src 'self' https://xxxxxxxx
查看以下内容:

如果您想将
https://apis.google.com/js/plusone.js
您必须像这样将源主机的名称添加到您的CSP中

<?php
 header("Access-Control-Allow-Origin: *");
因此,允许访问
https://xxxxxxxx/v1/common/introductions/faqs
您必须将相应的主机名添加到您的CSP中:

script-src 'self' https://apis.google.com
一个完整的CSP可以如下所示:

<meta http-equiv="Content-Security-Policy" content="default-src 'self' 
data: gap: https://ssl.gstatic.com 'unsafe-eval'; connect-src 'self' 
https://xxxxxxxx/v1/common/introductions/faqs; style-src 'self' 
'unsafe-inline'; media-src *">
connect-src 'self' https://xxxxxxxx

另请参见connect src指令中的。它明确说明了主机源的外观:

按名称或IP地址以及可选URL方案和/或端口号排列的Internet主机。该站点的地址可能包括一个可选的 前导通配符(星号“*”),可以使用 通配符(同样是“*”)作为端口号,表示所有 端口对源有效


你能用
https://xxxxxxxx
only?@shakib yesp使用
connect src'self'https://xxxxxxxx;应执行以下操作:job@shakibapi正在运行,那么shakibs提案对您有效吗?您正在等待DeviceRady,对吗?CSP和CORS是不同的事情。CSP限制您的页面可以做什么以及可以从何处加载内容(标题限制出站请求)。CORS限制哪些页面可以向您的站点发出特定类型的请求(标题限制入站请求-XMLHttpRequest、web字体、WebGL纹理和画布图像)。