首页 > 其他分享 >vue项目封装api接口

vue项目封装api接口

时间:2022-10-21 11:36:16浏览次数:70  
标签:axios http vue res return api error 封装 message

前言:vue的axios基于promise的http库,可以运行在浏览器和node环境中

一:api封装文件

request..js

import 'axios' from 'axios'//引用axios插件  npm install axios --s

//创建axios

const http= axios.create({

    baseURL :process.env.VUE_APP_BASE_API,//url = base url + request url

    timeout:15000//request timeout 

})

//request interceptors //创建拦截器

http.interceptors.request.use(

   config =>{

       if(store.getters.token){

            config.header['Authorization'] = getToken()

       }

      return config

   }

   error =>{

      console.log(error)

      return Promise.reject(error)

    }

)

//拦截器响应拦截

http.interceptors.request.use(

   response = >{

     const res = response.data

     if(res.code !== 200){

        Message({

            message:res.message||'Error',

            type:'error',

            duration:5*1000

        })

        return Promise.reject(new Error(res.message)||'Error')

    }else{

       return res

    }

    },

   error = >{

      Message({

         message:error.message,

         type:'error',

         duration:5*1000

      })

      return Promise.reject(error)

  }

   }

)

export default http

 

二、api引用 src/api/datas.js

import http from '@/utils/http'

export function getData (data){

     return http ({

           url:'xxxxx',

           method:'post',

          data

    })

}

三,.vue页面引用

import {getData} from '@/api/datas'

getData().then(res){

   if(res.code == 200){this.$message.success('请求成功')}

}

 

 

纯手敲,应用需要修改,另一个大哥网址

https://blog.csdn.net/fzy_1939/article/details/125889440

标签:axios,http,vue,res,return,api,error,封装,message
From: https://www.cnblogs.com/wdxue/p/16812875.html

相关文章

  • Vue中使用Switch开关用来控制商品的上架与下架情况、同时根据数据库商品的状态反应到
    一般后台对商品的信息管理、包含商品的上架与下架。为了提高用户的体验、将商品上下架的操作做成开关的形式。同时后台数据库中保存的商品状态能够根据开关状态改变。1......
  • EasyExcel根据模板填充(多sheet页封装工具方法)
    原文链接:https://www.cnblogs.com/Donnnnnn/p/15412128.html官方教程:https://www.yuque.com/easyexcel/doc/fill   一、填充模板里单个sheet页 模板  ......
  • Vue虚拟dom是如何被创建的
    先来看生成虚拟dom的入口文件:...import{parse}from'./parser/index'import{optimize}from'./optimizer'import{generate}from'./codegen/inde......
  • Vue3快速上手
    Vue3快速上手1.Vue3简介2020年9月18日,Vue.js发布3.0版本,代号:OnePiece(海贼王)耗时2年多、2600+次提交、30+个RFC、600+次PR、99位贡献者github上的tags地址:https://gi......
  • 基于tauri+vue3.x多开窗口|Tauri创建多窗体实践
    最近一种在捣鼓Tauri集成Vue3技术开发桌面端应用实践,tauri实现创建多窗口,窗口之间通讯功能。开始正文之前,先来了解下tauri结合vue3.js快速创建项目。tauri在......
  • vue3使用echarts插件并实现点击下载图表功能
    接到一个新的需求,就是用vue3制作一幅世界地图,并实现点击下载按钮将图表转变为图片下载到本地。使用插件: html2canvasnpm安装: npminstallhtml2canvas组件引入: import......
  • Vue和后端服务进行数据交互
    1、安装npminstallaxios--save2、在main.js文件引入importAxiosfrom'axios';//后台交互Vue.prototype.$http=Axios//defaults设置全局默认路径Axios.defaults.ba......
  • Vue3响应式助你轻松实现国际化
    本文为Varlet组件库源码主题阅读系列第十篇,也是最后一篇,读完本篇,可以了解到如何通过创建一个Vue3响应式对象就可以轻松实现国际化的需求。Varlet组件库支持多语言切换,使......
  • Vue3响应式助你轻松实现国际化
    本文为Varlet组件库源码主题阅读系列第十篇,也是最后一篇,读完本篇,可以了解到如何通过创建一个Vue3响应式对象就可以轻松实现国际化的需求。Varlet组件库支持多语言切换,使......
  • vue动态添加路由之避坑指南
    vue动态添加路由之避坑指南:https://www.it610.com/article/1517505460574420992.htm 你是否遇到了:addRouter后出现白屏路由守卫出现死循环踩了很多坑之后,我终于悟......