zoukankan      html  css  js  c++  java
  • vue中Axios的封装和API接口的管理

    请求拦截 参考
    https://blog.csdn.net/qq_38145702/article/details/81558816?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task
    https://juejin.im/post/5b55c118f265da0f6f1aa354#heading-5

    一、axios的封装

    在vue项目中,和后台交互获取数据这块,我们通常使用的是axios库,它是基于promise的http库,可运行在浏览器端和node.js中。

    安装
    npm install axios; // 安装axios
    
    引入

    一般我会在项目的src目录中,新建一个request文件夹,然后在里面新建一个http.js和一个api.js文件。
    http.js文件用来封装我们的axios,api.js用来统一管理我们的接口。

    http.js
    // http.js
    import axios from 'axios'; // 引入axios
    import QS from 'qs'; // 引入qs模块,用来序列化post类型的数据,后面会提到
    // vant的toast提示框组件,大家可根据自己的ui组件更改。
    import { Toast } from 'vant'; 
    
    
    环境的切换

    我们的项目环境可能有开发环境、测试环境和生产环境。我们通过node的环境变量来匹配我们的默认的接口url前缀。axios.defaults.baseURL可以设置axios的默认请求地址就不多说了。

    // 环境的切换
    if (process.env.NODE_ENV == 'development') {    
        axios.defaults.baseURL = 'https://www.baidu.com';} 
    else if (process.env.NODE_ENV == 'debug') {    
        axios.defaults.baseURL = 'https://www.ceshi.com';
    } 
    else if (process.env.NODE_ENV == 'production') {    
        axios.defaults.baseURL = 'https://www.设置post的请求头为application/x-www-form-urlencoded;charset=UTF-8production.com';
    }
    
    设置请求超时

    通过axios.defaults.timeout设置默认的请求超时时间。例如超过了10s,就会告知用户当前请求超时,请刷新等。

    axios.defaults.timeout = 10000;
    
    post请求头的设置

    post请求的时候,我们需要加上一个请求头,所以可以在这里进行一个默认的设置,即设置post的请求头为application/x-www-form-urlencoded;charset=UTF-8

    axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8';
    
  • 相关阅读:
    CNN网络改善的方法——池化
    tensorflow 卷积层
    CNN输出维度的计算
    CNN滤波器
    CNN如何识别一幅图像中的物体
    什么是卷积?
    windows 和 linux 安装 tensorflow
    终端安装opencv
    css3圆形光环闪烁效果
    微信小程序
  • 原文地址:https://www.cnblogs.com/maizilili/p/12409764.html
Copyright © 2011-2022 走看看