使用jQuery的getJson进行跨域提取数据

本文介绍了一种实现跨域请求的方法——JSONP。通过客户端动态生成带有回调函数的URL,服务器端响应时将数据包装进回调函数名内返回,从而绕过浏览器的同源策略限制。

出于对安全问题的考虑,Ajax应用中,浏览器默认是不支持跨域调用的。

使用实例:

客户端的js程序:

  注意这里调用的地址中jsoncallback=?是关键的所在!其中,符号会被Query自动替换成其他的回调方法的名称,具体过程和原理我们这里不理 会。我们关心的是jsoncallback=?起什么作用了?原来jsoncallback=?被替换后,会把方法名称传给服务器。我们在服务器端要做什 么工作呢?服务器要接受参数jsoncallback,然后把jsoncallback的值作为JSON数据方法名称返回,比如服务器是php,我们会这 样做

 

服务器端的程序:

 

 

我们要注意两点:

1、 在请求地址里加上参数 jsoncallback=?

2、在服务端程序里把jsoncallback的值和数据一起返回,如 $_GET['jsoncallback'].'('.$msg.')';

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值