我很难知道该怎么做。我一直在阅读一些推断出你从本地文件系统启动html文件时无法进行ajax调用的消息来源(文件://在url中)。
我的桌面上有一个html文件(即在浏览器url file://中),其中包含以下ajax调用:
$.ajax({
type: "POST", // This for array
url: "http://www.mywebsite.com/exclude.php",
async: true,
cache: false,
crossDomain: true, // This needs to be true for other people
success: function (data) {
var json = jQuery.parseJSON(data);
// Use json in interesting ways
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
// Silent error
}
});
我服务器上的php文件是基本的:
<?php
header("Access-Control-Allow-Origin: *"); // To allow cross domain
$KeyCodeStatics_BlackList = ["181K2", "4V419"];
echo json_encode($KeyCodeStatics_BlackList);
?>
有些人建议不要在本地文件系统中启动的html文件中调用ajax调用(文件://在url中)。
我得到的错误:
Origin file: not found in Access-Control-Allow-Origin header.
和
XMLHttpRequest: Network Error 0x80700013, Could not complete the operation due to error 80700013.
我怎样才能克服这一点?我需要从本地文件系统的html文件中对/www.mywebsite.com/exclude.php进行异步调用。
注意:不仅仅是我必须这样做,每个最终用户都使用这个html文件。所以这意味着我不能要求他们更改浏览器的安全设置。