我正在尝试启用外部源来向我的服务器发出GET请求。现在我只是通过godaddy在我的个人服务器上进行测试。这可能是一个问题吗?
我正在尝试向
提出请求的页面上有以下代码//page.php
<?php
header("Content-Type: application/json")
header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET');
include_once 'php_dom/simple_html_dom.php';
include_once 'phpQuery.php';
if(isset($_GET['item'])){
echo json_encode(array("data" => $_GET['item']));
}
else{
echo json_encode(array("Error"=>"No item provided"));
}
我尝试过这样的请求(显然是我的网址),而且我没有收到任何回复。
$.getJSON("http://www.example.com/page.php?item=123&format=json&callback=?", function(data) {
alert(data);
});
Chrome开发人员显示成功请求但未返回任何内容。我做错了吗?
答案 0 :(得分:2)
当您使用callback=?
时,响应将作为JSONP处理。尝试这样的事情:
if(isset($_GET['item']) && isset($_GET['callback'])){
echo $_GET['callback'].'('.json_encode(array("data" => $_GET['item'])).');';
}
...或省略callback-parameter。