net . 我正在使用jQuery来执行一些操作 . 当我将代码部署到本地时,它工作正常 . 但是,当我将相同的代码部署到实时服务器时 . 然后在控制台中出现错误:
拒绝加载脚本'https://cdnjs.cloudflare.com/ajax/libs/jquery-csv/0.71/jquery.csv-0.71.min.js',因为它违反了以下内容安全策略指令:“script- src'self''unsafe-inline'“ .
请检查我的HTML代码以获取参考:
<html>
<head>
<title>Notifications</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link type="text/css" rel="stylesheet" href="./Content/bootstrap.min.css" />
<link type="text/css" rel="stylesheet" href="./Content/style.css" />
<script type="text/javascript" src="./Scripts/jquery-1.10.2.min.js"></script>
<script type="text/javascript" src="./Scripts/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-csv/0.71/jquery.csv-0.71.min.js"></script>
</head>
<body>
<h2>Send</h2>
<div>
<textarea id="text_message" rows="12" cols="100" placeholder="Please Type Your Message"></textarea>
<div style="margin: 5px">
<input type="button" value="Submit" onclick="sendPush()" />
</div>
<div class="loadermodal" style="display: none">
<div class="center">
<img alt="" src="./Content/img/ajax-loader.gif" />
</div>
</div>
</div>
<script>
function sendMessage() {
var comment = $.trim($("#text_message").val());
if (comment != "") {
// Show alert dialog if value is not blank
// alert(comment);
$(".loadermodal").show();
$.post("/PushNotification/sendPushNotificationToAll", { 'message': comment }).done(function (data) {
var obj = jQuery.parseJSON(data);
if (obj.success != "0") {
alert("Message Sent Successfully");
$(".loadermodal").hide();
}
else
alert("Error in Sending Push");
});
}
else {
alert("Enter Some Text To Send A Message");
}
}
</script>
</body>
在这个代码中,我创建了一个简单的文本框来编写消息和一个将执行脚本的按钮 . 这个脚本在我的本地工作正常,但是当我将相同的代码部署到我的应用服务器中时,这种类型的错误是进入控制台 .
请分享您对此问题的看法
谢谢
1 回答
解决此错误的最简单,最可靠的方法是将源从url复制到
/Scripts/
目录并使用以下命令引用该文件:<script type="text/javascript" src="./Scripts/jquery.csv-0.71.min.js"></script>
看起来您已经使用jQuery和bootstrap文件执行此操作 . 此方法允许您将存储库中的所有依赖项保留在必要的版本中 .
除此之外,此错误是为了防止您的Web服务器从您未维护的位置加载潜在的恶意脚本 . 大多数Web服务器都具有允许此设置的设置,但它们最初被禁用(有充分理由) .
话虽这么说,我仍然建议下载源代码并包含在你的项目中 .