【发布时间】:2015-04-18 18:12:03
【问题描述】:
我正在使用 jquery 和 javascript 以及使用 jquery 插件进行客户端项目。我们的教授为我们提供了一个 proxy.php 文件来提取我们运行 Web 应用程序所需的数据。我使用了导入 jquery.min.js 文件的简单选项卡插件。但我不断收到错误,proxy.php 文件无法加载。
这里是 proxy.php 文件。
<?php
error_reporting(0);
define ('HOSTNAME', 'http://simon.ist.rit.edu:8080/Services/resources/ESD');
if($_POST['path']){
$hold=explode('?',$_POST['path']);
$path=$hold[0];
$post=$hold[1]."&ip=".$_SERVER['REMOTE_ADDR'];
$url= HOSTNAME.$path;
$session = curl_init($url);
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
curl_setopt($session,CURLOPT_POST,1);
curl_setopt($session,CURLOPT_POSTFIELDS,$post);
}else{
$url=HOSTNAME.$_GET['path'];
$session = curl_init($url);
curl_setopt($session, CURLOPT_HEADER, false);
curl_setopt($session, CURLOPT_RETURNTRANSFER, true);
}
$xml = curl_exec($session);
header("Content-Type: text/xml");
echo $xml;
curl_close($session);
?>
这些是我不断遇到的错误。我该如何解决这个问题?
XMLHttpRequest cannot load file:///C:/Users/Kubra/Desktop/Project2/proxy.php
?path=%2FCities%3Fstate%3DNY&_=1429379822193.
Cross origin requests are only supported for protocol
schemes: http, data, chrome, chrome-extension, https,
chrome-extension-resource. jquery.min.js:6
Uncaught NetworkError: Failed to execute 'send' on 'XMLHttpRequest':
Failed to load 'file:///C:/Users/Kubra/Desktop/Project2
/proxy.php? path=%2FCities%3Fstate%3DNY&_=1429379822193'.
【问题讨论】:
-
你是在你的 PHP 文件所在的服务器上运行这个吗??
-
您在客户端 JavaScript 代码中用于触发 AJAX 调用的 URL 似乎存在问题。将此
file:///C:/Users/Kubra/Desktop/Project2/proxy.php更改为有效的 URL。还要添加您的客户端 JS 代码以获得更好的分辨率
标签: javascript php jquery ajax proxy