JSONP原理
ajax 请求受同源策略影响,不允许进行跨域请求,而 script 标签 src 属性中的链接却可以访问跨域的js脚本,利用这个特性,服务端不再返回JSON格式的数据,而是返回一段调用某个函数的js代码,在src中进行了调用,这样实现了跨域。
Web页面上调用js文件时则不受是否跨域的影响(不仅如此,我们还发现凡是拥有"src"这个属性的标签都拥有跨域的能力,比如<script>、<img>、<iframe>
跨域jsonp处理,即设置回调函数,相当于调接口成功后设置 jsonp=jsonpCallback 设置回调函数,进行处理;
ajax 的核心是通过 XmlHttpRequest 获取非本页内容,而 jsonp 的核心则是动态添加 <script> 标签来调用服务器提供的 js 脚本;
jQuery 提供了方便使用 JSONP 的方式,虽然类似 ajax 的请求,但是本质是不一样的,且只能使用 get 请求;
跨域问题
最新推荐文章于 2023-05-12 16:16:52 发布