作者:夜的泪2502877077 | 来源:互联网 | 2020-09-04 19:03
Json(JavaScriptObjectNotation)是一种轻量级的数据交换格式。JSONP是JSONwithPadding的略称。它是一个非官方非正式的传输的协议,它允许在服务器端集成Scripttags返回至客户端。
突破同源策略限制:
1、script标签的src/img标签的src,或者说link标签的href他们没有被通源策略所限制
2、src或href链接的静态资源,本质上来说也是一个get请求
JSONP是什么?和json有关系吗?
Json(Javascript Object Notation) 是一种轻量级的数据交换格式。
JSONP是JSON with Padding的略称。它是一个非官方非正式的传输的协议,它允许在服务器端集成Script tags返回至客户端,通过Javascript callback的形式实现跨域访问。
JSONP的简单实现:
html代码:(运行在本地http://zrcloud.com/test.html)
JSONP简单实例
PHP服务器端代码:
'test','age'=>18,'sex'=>1];
echo $callback.'('.json_encode($arr).')';
?>
运行结果:
注:为什么我这次没有写test这个函数呢?而且竟然也运行成功了!
这就是jQuery的功劳了,jquery在处理jsonp类型的ajax时(,虽然jquery也把jsonp归入了ajax,但其实它们真的不是一回事儿),自动帮你生成回调函数并把数据取出来供success属性方法来调用。
以上就是关于Jsonp跨域原理详解及简单应用的详细内容,更多请关注 第一PHP社区 其它相关文章!