我在firefox os验证器中有这条消息:
Erreur:您的代码可能正在执行违反特权应用的CSP(内容安全策略)的操作。 您可以在Mozilla Developers网站上找到有关CSP允许和不允许的内容的更多信息。 https://developer.mozilla.org/en-US/docs/Security/CSP
www/index.html 16 17 <script type="text/javascript" src="js/select2.js"></script> <script>
代码index.html:
<!DOCTYPE html>
<html>
<head>
<title>Chri App</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="js/jquery.css.min.css" rel="stylesheet"/>
<script src="js/jquery-1.9.1.min.js"></script>
<script src="js/jquery.mobile-1.3.1.min.js"></script>
<meta charset='utf-8'>
<meta name="format-detection" content="telephone=no" />
<link rel="stylesheet" type="text/css" href="css/index.css" />
<meta name="viewport" content="width=device-width, initial-scale=1">
<link href="js/select2/select2.css" rel="stylesheet" >
<link href="css/web_app.css" rel="stylesheet" >
<script src="main.js"></script>
<script type="text/javascript" src="js/select2/select2.js"></script>
<script>
$(document).bind('pageinit',function(e ){
$.support.cors = true;
$.mobile.allowCrossDomainPages= true;
$.mobile.selectmenu.prototype.options.nativeMenu = false;
// When the testform is submitted
$("#search-form-location").select2();
$("#search-form-category").select2();
$("#testform").submit(function() {
$.mobile.loading('show');
.......
你有什么想法吗?
答案 0 :(得分:3)
如果您正在编写特权(或认证)应用程序,则需要遵守多项要求,以使其更加强大 - 不易受到各种攻击。其中一个限制是禁止内联javascript ,即<script>
标记中嵌入的javascript - 您应该将这些内联脚本放入外部.js
文件中,并通过{{ 1}}属性。
查看您的代码,这应该是验证者抱怨的原因(请参阅您在那里的jQuery src
块)。将此块放到外部文件中应解决此问题。
您可以在MDN: Apps CSP上了解有关其他CSP要求和限制的更多信息。