千家信息网

如何用vue封装axios请求

发表于:2024-11-29 作者:千家信息网编辑
千家信息网最后更新 2024年11月29日,这篇"如何用vue封装axios请求"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"如
千家信息网最后更新 2024年11月29日如何用vue封装axios请求

这篇"如何用vue封装axios请求"文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇"如何用vue封装axios请求"文章吧。

首先 在src路径下建http文件夹 并且创建api.js env.js request.js 这三个文件

env.js文件

这个文件主要就是封装我们的公共地址

export default {// 开发环境dev: {    baseUrl: "开发环境公共地址"},//   测试环境testtest: {    baseUrl: "测试环境公共地址"},//线上接口prod: {    baseUrl: "线上环境公共地址"}};

request.js 文件

这里主要就是创建axios 以及封装请求拦截和相应拦截

import axios from "axios";import env from "./env";//这里是私有域名  但是也可以不写var vipUrl = "/app";// 创建axios实例const service = axios.create({//这里拿线上接口测试baseUrl: env.prod.baseUrl + vipUrl,    headers:{},//请求头    settimeout:2000,//超时时间});// 添加请求拦截器service.interceptors.request.use(config => {    // 在发送请求之前做些什么    config.headers["deviceType"] = "H5";    console.log("请求的数据:", config);    return config;},error => {    // 对请求错误做些什么    return Promise.reject("出错", error);});// 添加响应拦截器service.interceptors.response.use(response => {    // 对响应数据做点什么    // console.log("返回的数据", response);    return response;},error => {    // 对响应错误做点什么    return Promise.reject(error);});export default service;

api.js

这个文件中主要是需要的接口地址

//引入request.js文件import request from "./request";// 轮播export function getBanners(data) {return request({    url: "/banner",//这个地址是去掉公共地址和私有域名之后剩下的地址    method: "GET",//请求方式 支持多种方式  get post put delete 等等    data//发送请求要配置的参数 无参数的情况下也可以不写});}

最后是在页面中的引用

那个页面需要请求数据 就引入相应的方法 比如我的首页需要引入banner

以上就是关于"如何用vue封装axios请求"这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注行业资讯频道。

0