在使用jquery ajax的jsonp(json with padding) 执行跨域请求时,例如我要获取服务器的时间,那么我在服务器新建一个time.php代码如下:
<?php
date_default_timezone_set('Asia/Shanghai');
echo('callbackhandle('.date('Y-m-d H:i:s',time()).')');
?>
JS端请求如下:
$.ajax({
url:'http://www.mshi.site/time.php',
type:'GET',
success:function(msg){
alert(msg);
},
data:{},
dataType:'jsonp',
jsonpCallback:'callbackhandle'
});
发现执行之后 firebug提示:
missing ) after argument list
然后我上网搜索了一下,找到了类似的说法给了我灵感:是的,缺少括号!
<?php
date_default_timezone_set('Asia/Shanghai');
echo('callbackhandle(\''.date('Y-m-d H:i:s',time()).'\')');
?>
修改测试OK!