vue2.0_在vue中axios请求的封装和使用

本文介绍了在Vue2.0项目中如何进行axios请求的封装,包括在src/utils/request.js中封装axios,创建src/api/user.js存放请求接口,以及在main.js中全局注册并使用封装后的axios。通过这种方式,可以更方便地在项目中调用如登录接口等API。
摘要由CSDN通过智能技术生成
首先
npm install axios
其次

在src目录下新建一个utils文件夹,我们的一些封装工具都可以放在这。
然后在utils文件夹下新建一个request.js文件,将aixos请求的封装写到里面:

import axios from 'axios'
import Qs from 'qs'
import store from '@/store'
import router from '@/router'
import filterPath from '@/utils/filterPath'
import {
   Toast} from 'vant'
import {
   getToken} from '@/utils/auth'
import {
   removeToken} from "./auth";
import {
   isEmptyObject} from '@/utils'


// 创建axios实例
const service = axios.create({
   
  baseURL: process.env.VUE_APP_BASE_API, // url = base url + request url
  // withCredentials: true, // 跨域请求时发送cookie
  timeout: 25000, // 请求超时的时长
  headers: {
   'Content-Type': 'application/x-www-form-urlencoded'}, // 默认设置请求头 为FormData 数据格式  (JSON数据格式:application/json)
  method: 'post', // 默认设置'post'请求
  withCredentials: true //跨域请求时是否需要使用凭证  简单讲:跨域请求是否提供凭据信息(cookie、HTTP认证及客户端SSL证明等),也可以简单的理解为,当前请求为跨域类型时是否在请求中协带cookie。
});

// 请求拦截器(对请求数据配置做统一处理)
service.interceptors.request.use(
    //在发送请求之前做些什么
    config => {
   
      // console.log('baseURL:', config.baseURL, config.type)
      const BASE_PATH = filterPath(config.type);
      config.data = {
   ...config.data};
      if(config.method === 'get'){
   
        config.params = new URLSearchParams(config.data
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值