Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取php文件的jquery.get()_Jquery - Fatal编程技术网

获取php文件的jquery.get()

获取php文件的jquery.get(),jquery,Jquery,可能重复: 我正在使用jquery get函数获取链接中的数据 但是当我运行它时,我得到一个错误,说“xmlhttprequest无法加载”。有谁能建议我如何解析这个文件来获取数据吗 $(document).ready(function() { $.getJSON("http://stormtrack.srcc.lsu.edu/php/getStormYearAsJson.php", function(data){ alert("Data Loaded: " + da

可能重复:

我正在使用jquery get函数获取链接中的数据

但是当我运行它时,我得到一个错误,说“xmlhttprequest无法加载”。有谁能建议我如何解析这个文件来获取数据吗

$(document).ready(function() {
    $.getJSON("http://stormtrack.srcc.lsu.edu/php/getStormYearAsJson.php", function(data){
        alert("Data Loaded: " + data);
    });
});

除非脚本在域
http://stormtrack.srcc.lsu.edu
由于同一原产地政策

你正在与这部电影发生冲突。浏览器不允许跨域请求


如果您尝试使用的API支持它,请尝试使用JSONP。您可以使用jQuery的尼斯包装函数来实现这一点。

AJAX受到同源策略的限制,即只能从与脚本相同的主机名/域获取内容

jQuery允许您使用一种称为JSONP的东西来解决这个问题。这是您调用的url发送函数名的地方,php脚本将应答封装在js函数调用中

将javascript请求更改为:

http://stormtrack.srcc.lsu.edu/php/getStormYearAsJson.php?callback=myFunc
然后将php输出包装到

function myFunc {
    ...
}

您不能使用XHR访问另一个域上的数据,因为可能需要使用JSONP或在同一个域上用PHP创建一个代理来获取数据并按原样返回。

原因: AJAX调用只能在同一个域中完成。这就是为什么你会有这个错误

解决方法:
如果希望从外部网站获取数据,则需要创建自己的服务器端页面,该页面将对其他网站进行查询。从那里,您可以创建对这个新页面的AJAX调用,该调用将调用另一个服务器。

此外,该链接似乎没有返回有效的JSON