美文网首页
react+antd 封axios拦截请求和响应拦截

react+antd 封axios拦截请求和响应拦截

作者: 冷r | 来源:发表于2019-09-23 20:57 被阅读0次

import axios from 'axios';
import qs from 'qs';
import { getCookies } from '@/util/index';

const request = axios.create({
// baseURL: process.env.BASE_URL,
timeout: 5000
});

// 拦截请求
request.interceptors.request.use(config => {
config.method === 'post' ?
(config.data = qs.stringify({...config.data })) :
(config.params = {...config.params });
config.headers['Content-Type'] = 'application/x-www-form-urlencoded';
if (config.url !== '/user/login') {
config.headers['authorization'] = getCookies('token');
}
if (!getCookies('token') && config.url !== '/user/login') {
window.location.href = '/login';
}
return config;
});
// 添加响应拦截
request.interceptors.response.use(
response => {
// 直接返回response.data
return response;
},
error => {
const { status, data } = error.response;
switch (status) {
case 401:
alert('登录失败,请重新登录');
break;
case 422:
alert(data.msg);
break;
default:
alert('请稍后重试');
}
}
);
export default request;

相关文章

  • react+antd 封axios拦截请求和响应拦截

    import axios from 'axios';import qs from 'qs';import { ge...

  • 【vue+axios】一个项目学会前端实现登录拦截

    一个项目学会vue全家桶+axios实现登录、拦截、登出功能,以及利用axios的http拦截器拦截请求和响应。 ...

  • axios 简单化

    为什么选择axios? 1.使用axios可以统一做请求-响应拦截,例如响应时我们将响应信息拦截起来,判断状态码,...

  • Axios拦截器

    一、Axios拦截器是什么 就是拦截每一次的请求和响应,然后进行相应的处理。请求拦截器,它可以统一在你发送请求前在...

  • Vue方向:axios全局拦截器以及配置的优先级

    1、axios全局拦截器 axios在每一个请求配置中都有一个配置项用于拦截请求或响应结果 这个拦截只能拦截当前配...

  • vue全局axios

    1.axios 基准路径 2.设置请求拦截器拦截token 3.axiso设置响应拦截错误

  • axios拦截器

    拦截器 在请求或响应被then或catch处理前拦截它们。 // 添加请求拦截器 axios.intercepto...

  • 实现像 axios 一样的请求拦截器

    axios 拦截器在请求或响应被 then、catch 之前进行拦截处理。 axios 的三大特性:基于 Prom...

  • axios使用详解

    文档 1. 拦截器 1.1 请求拦截器 基本格式 可以添加一些头部信息 1.2 响应拦截器 axios响应时,基本...

  • axios教程

    Axios 是一个基于 promise 的 HTTP 库,支持拦截请求和响应,自动转换 JSON 数据, 客户端支...

网友评论

      本文标题:react+antd 封axios拦截请求和响应拦截

      本文链接:https://www.haomeiwen.com/subject/zvfgyctx.html