我打算创建一个小api,它将执行一些php函数,但只能由js实现。
我想为facebook sdk创建一个类似的解决方案。
所以我创建了一个名为rest.php的php文件
现在我需要从conjs.js文件执行ajax请求,但是在尝试请求ajax请求时我得到一个未定义的信息。
1)我应该如何建立这个?
2)我做错了什么?
rest.php
<?php
echo "Hello from ".$_GET['name'];
?>
conjs.js - &gt;包含在客户端的html页面上(类似于
connect.facebook.net/en_US/all.js off facebook)
function getDev(){
$.ajax({
url: 'http://mydomain/rest.php',
type: 'GET',
data: 'Name=John', // or $('#myform').serializeArray()
success: function(data) { return('Get completed '+data); }
});
}
客户端smaple html页面: - 不在域名 -
<html><head> <script src="http://mydomain/conjs.js"></script></head><body>
<script>
alert(getDev());
</script>
</body></html>
提前致谢:)
答案 0 :(得分:3)
由于ajax的callback性质,您需要使用asynchronous。
回调是一个函数,它作为参数传递给另一个在有趣点执行回调的函数。在下面的例子中,它位于ajax响应的成功块中,被认为是有趣的。
试试这个:
function getDev(callback){
$.ajax({
url: 'http://mydomain.com/rest/rest.php',
type: 'GET',
data: 'Name=John', // or $('#myform').serializeArray()
success: function(data) {
callback('Get completed '+data);
}
});
}
稍后致电:
<script type="text/javascript">
getDev(function (response) {
alert(response);
});
</script>
答案 1 :(得分:1)
AFAIK $ _GET []区分大小写。因此,要么发送小写'name = John',要么读取正确的$ _GET ['Name']