我一直试图向外部服务器发出ajax请求.
我学到了迄今为止,由于安全原因我需要使用get JSON来做到这一点
我学到了迄今为止,由于安全原因我需要使用get JSON来做到这一点
现在,我似乎不能简单地调用外部页面.
我试图尽可能简化它,但它仍然不起作用.
我有2个文件,test.html& test.PHP的
我的test.html发出这样的一个电话,到本地主机进行测试:
$.getJSON("http://localhost/OutVoice/services/test.PHP",function(json){ alert("JSON Data: " + json); });
我想让我的test.PHP返回一个简单的’test’:
$results = "test"; echo json_encode($results);
我可能使一些令人难以置信的新秀错误,但我似乎无法弄清楚.
另外,如果这样工作,我该怎么发送数据到我的test.PHP页面,像你会像test.PHP?id = 15?
解决方法
这可能是你在test.PHP中没有回调.另外,json_encode只接受一个数组:
$results = array("key" => "value"); echo $_GET['callback'] . '(' . json_encode($results) . ')'; // the callback stuff is only needed if you're requesting from different domains
使用http://时,jQuery会自动切换到JSONP(即使用脚本代码而不是XMLHttpRequest).如果您在同一个域上有test.html和test.PHP,请尝试使用相对路径(而不是回调).