最初浏览器页面向服务器请求数据时,返回的是整个页面,整个页面都会刷新,当我们只需要请求部分数据时,返回整个页面会造成网络资源的占用,为了提高数据请求效率,异步网络请求Ajax出现了,它可以在页面无刷新的情况下请求数据。jQuery封装的ajax,原生的XMLHttpRequest,以及axios都可以实现异步网络请求。
Axios(相比于原生的XMLHttpRequest对象来说) 简单易用,(相比于jQuery)axios包尺寸小且提供了易于扩展的接口,是专注于网络请求的库。(axios本质上是原生XMLHttpRequest的封装) Axios(ajax i/o system): 这不是一种新技术,本质上还是对原生XMLHttpRequest的封装,可用于浏览器和nodejs的HTTP客户端,只不过它是基于Promise的,符合最新的ES规范。具备以下特点:
在浏览器中创建XMLHttpRequest请求 在node.js中发送http请求 支持Promise API 拦截请求和响应 转换请求和响应数据 取消要求 自动转换JSON数据 客户端支持防止CSRF/XSRF(跨域请求伪造)
axios可以请求的方法: get:获取数据,请求指定的信息,返回实体对象 post:向指定资源提交数据(例如表单提交或文件上传) put:更新数据,从客户端向服务器传送的数据取代指定的文档的内容 patch:更新数据,是对put方法的补充,用来对已知资源进行局部更新 delete:请求服务器删除指定的数据