我使用php与file_get_contents和工程完美地从url中得到一些结果,但如果使用加载显示页面和结果与jQuery,不显示任何东西。
我有一个页面,给予我一些我需要的结果,我从URL调用页面,并显示结果。
当从其他域等调用时,向我显示内容和这些结果,例如:
$results=file_get_contents("http://loadwebdata.com/results.php");
字符串
results.php使用curl调用这些结果。
$ch = curl_init();
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_REFERER, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 3000);
curl_setopt($ch, CURLOPT_TIMEOUT, 10000);
$result = curl_exec($ch);
curl_close($ch);
return $result;
型
所有工作都很好,但唯一的问题是当我想显示这些结果时,例如使用jQuery的load:
jQuery(document).ready(function() {
jQuery("#loader").show("10").load("http://loadwebdata.com/results.php");
});
<div id="loader"></div>
型
在这种情况下,使用jQuery不会显示任何内容,通过这个问题,因为结果没有任何格式,是简单的文本,我从jQuery中了解到必须显示没有任何问题,但不,它不会显示。
1条答案
按热度按时间agyaoht71#
根据您的最新评论:
与文件_得到_内容从php工程,也如果测试脚本与jquery从同一个域,给予我的结果jQuery工程,问题是当使用jQuery脚本从localhost和调用域获取结果等,但如果使用从其他域工程,但没有工程从localhost在Appserver或Xamp
这似乎是CORS的问题
看看你的browser developer console。如果它看起来像这样,我们可以确认它是CORS的问题:
x1c 0d1x解决方案是在服务器端(或您正在使用的任何Web服务器)更新PHP代码或Apache配置
要将以下标头添加到HTTP响应:
字符串
然后,浏览器应该允许从本地主机服务器向您的Web服务器发出请求,或者根据您是否在 Access-Control-Allow-Origin 中使用 * 符号,从任何地方。
Here you can have more details about CORS at the apache2 level的
Or this link if you prefer doing this in PHP directly的
我可以更新这个答案,如果我可以得到任何进一步的细节问题,你有。