原来一直以为JSONP是什么高大上的技术,今天可算搞明白什么是JSONP
了。
首先介绍两个概念:
同源
:顾名思义,同源主要在三方面,协议、域名、端口号都相同就是同源。
同源策略
:同源策略是浏览器的一种安全机制,不同源之间发生交互就会被浏览器拦截,导致无法进行数据请求等问题。
JSONP就是程序员为了解决跨域问题,被迫想出来的一种策略。
我们在写代码、做项目的过程中需要经常借助各种js库、框架,其中一种引用方式就是直接在script
标签中引入。
例如引入vue.js的一种方式:
<script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script>
我们却可以正常获取到数据,可见浏览器对于script标签没有采取同源策略。因此聪明的程序员想到了在script标签的src属性中下手。我们也知道script标签就是为了加载单独的js脚本文件,因此只有get方式,没有post方式。
🔉:JSONP和Ajax之间没有任何联系。不要把JSONP请求数据的过程叫做Ajax,因为JSONP没有用到xhr这个对象。
在network->xhr中是没有的。