axios简介
axios基础简介
1. Vue中发送请求的方式
选择一: Ajax
传统的ajax时基于XMLHttpRequest(XHR)
为什么不选:
1. 配置和调试方式比较混乱
2. 编码看起来比较难受
3. 真是开发中用的比较少
选择二: JQuery-Ajax
相比于传统的ajax要好用一些
为什么不选:
使用JQuery-Ajax需要引入JQuery模块, 然而整个vue开发过程中时不需要JQuery这个模块中
仅仅为了使用JQuery-Ajax而引入JQuery模块,不利于轻量化,因为JQuery代码1w+, 而vue代码也是1w+
选择三: 官方在Vue1.x的时候,推出了Vue-resource模块
优点:
1. Vue-resource体积相对于JQuery小得多
2. Vue-resource还是官方推出的
为什么不选:
1. 在Vue2.0推出后,官方不再维护Vue-resource
2. 这意味着,后续再使用Vue-resource会存在很大隐患
选择四: axios, 这是官方宣布不再维护Vue-resource后的推荐使用
2. 常见的网络请求方式:JSOP
JSONP主要解决了跨域访问的问题
JSOP的原理:
1. JSONP的核心在于通过<script>标签的src来帮助我们请求数据
2. 原因是我们再项目中部署在domain1.com服务器上时,是不能直接访问domain2.com服务器上的资料的
3. 但是<script>标签上的src链接就不存在这个问题.
4. 因此,我们利用<script>标签的src来帮助我们去服务器请求数据,将数据作为一个JavaScript的函数去执行,并且再执行过程中传入我们需要的JSONP
5. 所以,封装JSONP的核心在于我们监听window上二点JSONP进行回调时的名称
3. axios的功能特点
1. 再浏览器中发送HTMLHttpRequests请求
2. 再node.js中发送http请求
3. 支持Promise API
4. 拦截请求和响应
5. 转换请求和响应数据
...