づGeranium☆う 2021-11-16 09:49 采纳率: 5.6%
浏览 36
已结题

前端的数据请求封装有没有什么通用的模版,每次都会忘记,那个能讲讲原理

数据请求封装有没有什么通用的模版,每次都会忘记,那个能讲讲原理、
数据请求封装有没有什么通用的模版,每次都会忘记,那个能讲讲原理
数据请求封装有没有什么通用的模版,每次都会忘记,那个能讲讲原理;
救救孩子吧

  • 写回答

2条回答 默认 最新

  • 一只熊的北极 2021-11-17 13:58
    关注

    拿去不谢

    
    
    ```javascript
    
    /**
     * http配置
     * axios参数说明
     */
    import axios from 'axios'
    import NProgress from 'nprogress'
    import 'nprogress/nprogress.css'
    
    axios.defaults.timeout = 20000;
    axios.defaults.headers.post['Content-Type'] = 'application/json; charset=utf-8'
    //返回其他状态吗
    axios.defaults.validateStatus = function (status) {
      return status >= 200 && status <= 500; // 默认的
    };
    //跨域请求,允许保存cookie
    axios.defaults.withCredentials = true;
    NProgress.configure({
      showSpinner: false
    });
    //HTTPrequest拦截
    axios.interceptors.request.use(config => {
      NProgress.start();
      const meta = (config.meta || {});
      const isToken = meta.isToken === false;
      //headers中配置serialize为true开启序列化
      return config
    }, error => {
      return Promise.reject(error)
    });
    //HTTPresponse拦截
    axios.interceptors.response.use(res => {
      NProgress.done();
      const status = res.data.code || 200;
      const message = res.data.msg || '未知错误';
      if (status !== 200) {
        return Promise.reject(new Error(message))
      }
      return res;
    }, error => {
      NProgress.done();
      return Promise.reject(new Error(error));
    });
    
    export default axios;
    
    
    

    ```

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 10月4日
  • 已采纳回答 9月26日
  • 修改了问题 11月16日
  • 创建了问题 11月16日

悬赏问题

  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)