什么是jsonp
来源:互联网 发布:qq三国修复数据 编辑:程序博客网 时间:2024/06/10 17:48
要了解JSONP,不得不提一下JSON,那么什么是JSON ?
JSON is a subset of the object literal notation of JavaScript. Since JSON is a subset of JavaScript, it can be used in the language with no muss or fuss.
JSONP(JSON with Padding)是一个非官方的协议,它允许在服务器端集成Script tags返回至客户端,通过javascript callback的形式实现跨域访问(这仅仅是JSONP简单的实现形式)。
3.2 jsonp为什么能跨域
由于同源策略的限制,XmlHttpRequest (ajax 调用)只允许调用当前站点的资源(域名、协议、端口)的资源,而我们知道,link 和script标签中的src是可以指向外网资源的,也就是我们通过这个我们是可以访问 ” 外面资源 “ 的,所以利用这一点,我们可以实现简单的跨域。
3.3 jsonp 跨域原理说明
当我们客户端向服务器发送请求的时候,客户端会注册一个回调参数(默认为callback),这个回调参数就是客户端和服务器进行认证的安全策略,服务器端获取到callback的值后,将返回的数据包裹(假如callback的注册值为jQuery21409887892813421786_1451718790536 ,那么返回的值就为:jQuery21409887892813421786_1451718790536({}))起来,然后发送给客户端,客户端首先解析script标签,并执行里面的值,通过注册的回掉参数,把返回的值给取出来,最后传入到客户端预先定义好的callback函数里面去(如果使用ajax jsonp 的话,那就是success了)。注意返回的要是可执行的js代码。如果你使用MVCController写Api的话很简单,只需要返回JavaScriptResult就可以了
- 什么是JSONP
- 什么是jsonp???
- 什么是jsonp
- 什么是JSONP?
- 什么是JSONP
- 什么是JSONP
- 什么是JSONP协议?
- 什么是JSONP协议
- 什么是jsonp格式
- 什么是jsonp以及实例
- 一篇关于什么是jsonp
- json教程--什么是jsonp?
- 什么是json?和jsonp有什么区别?
- ajax、json与jsonp详解:什么是json、jsonp,和ajax的区别
- JSONP
- jsonp
- JSONP
- jsonp
- HDU 5726 求gcd=k的区间的个数 (二分+RMQ)
- stringbuilder
- hibernate参数设置一览表
- 矩阵转置与矩阵相乘
- 二维数组和指针数组
- 什么是jsonp
- 你需要知道的枚举类
- 【VS开发】error C2220: 警告被视为错误 - 没有生成“object”文件
- HDU1029:Ignatius and the Princess IV
- poj1160 Post Office
- C语言可变参数
- 关于Service中的耗时操作
- Android_sdk目录结构详解
- ASP.NET服务器控件的生命周期