首页 > 移动平台 > 详细

axios的封装 和拦截器的使用

时间:2021-02-15 23:44:02      阅读:45      评论:0      收藏:0      [点我收藏+]
import axios from "axios";

//第一种方式
export function request(config,success,failure) {
    const instance = axios.create({
       baseURL:"http://123.207.32.32:8000" ,
        timeout:5000
    })
    instance(config)
        .then(res=>{
            // console.log(res)
            success(res)
        })
        .catch(err=>{
            // console.log(err)
            failure(err)
        })
}
//第二种方式
export function request(config) {
    return new Promise((resolve, reject) => {
        const instance = axios.create({
            baseURL:"http://123.207.32.32:8000" ,
            timeout:5000
        })
        instance(config)
            .then(res=>{
                resolve(res)
            })
            .then(err=>{
                reject(err)
            })
    })
}
//第三种方式
export function request(config,success,failure) {
    const instance = axios.create({
       baseURL:"http://123.207.32.32:8000" ,
        timeout:5000
    })
    return instance(config)
}
//最终方式
export function request(config,success,failure) {
    // 1,创建实例
    const instance = axios.create({
       baseURL:"http://123.207.32.32:8000" ,
        timeout:5000
    })
    //设置拦截器
    instance.interceptors.request.use(config=>{
        console.log(config)
        return config
    },error => {
        console.log(error)
    })
    axios.interceptors.response.use(config=>{
        console.log(config)
        return config
    },error => {
        console.log(error)
    })
return instance(config) }
import {request} from "./network/request";
// 相关模块使用 request({ url:
"/home/multidata" }).then(res=>{ console.log(res) }).catch(err=>{ console.log(err) })

 其中响应拦截跟请求拦截的使用方式是一样    然后再进行拦截后都要将数据return  不然会出现错误

axios的封装 和拦截器的使用

原文:https://www.cnblogs.com/bear6770/p/14403723.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!