axios的基体请求使用
基于promise用于浏览器和node.js的http客户端
特点
支持浏览器和node.js
支持promise
能拦截请求和响应
能转换请求和响应数据
能取消请求
自动转换JSON数据
浏览器端支持防止CSRF(跨站请求伪造)
安装 npm install axios
GET请求示例
axios.get(’/user?ID=12345’)
.then(function (response) {
console.log(response);
})
.catch(function (error) {
console.log(error);
});
同时发生的请求
一下两个用来处理同时发生多个请求的辅助函数
axios.all(iterable)
axios.spread(callback)
创建一个实例
你可以创建一个拥有通用配置的axios实例
实例方法
axios#request(config)
axios#get(url[, config])
axios#delete(url[, config])
axios#head(url[, config])
axios#options(url[, config])
axios#post(url[, data[, config]])
axios#put(url[, data[, config]])
axios#patch(url[, data[, config]])
axios结合django的使用
首先要解决跨域问题,解决跨域问题有两种,一种是在前端,一种是在后端。本人更倾向于后端。
django跨域
CORS基本流程
浏览器将CORS请求分成两类:简单请求和非简单请求
浏览器发出CORS简单请求,只需要在头信息之中增加一个Origin字段
浏览器发出CORS非简单请求,会在正式通信之前,增加一次HTTP查询请求,称为“预检”请求(OPTIONS请求)。浏览器先询问服务器,当前网页所在的域名是否在服务器的许可名单之中,以及可以使用哪些HTTP动词和头信息字段。只有得到肯定答复,浏览器才会发出正式的XMLHttpRequest请求,否则就报错。
直接允许所有主机跨域
CORS_ORIGIN_ALLOW_ALL = True 默认为False