封装axios的接口请求数据方法

Posted muzishijie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了封装axios的接口请求数据方法相关的知识,希望对你有一定的参考价值。

lib文件夹中http.js文件的内容

 

包含了数据请求,路由的拦截,同时向外界暴露的是一个方法,方法内有三个参数,分别为请求的方式,地址,数据

 1 import axios from axios;
 2 import qs from qs;
 3 
 4 const server=axios.create(
 5     timeout:5000,
 6     withCredentials:true
 7 )
 8 
 9 server.interceptors.request.use((config)=>
10     if(config.method.toUpperCase()=="GET")
11         config.params=...config.data
12     else if(config.method.toUpperCase()=="POST")
13         config.headers["content-type"] = "appliaction/x-www-form-urlencoded";
14         config.data=qs.stringify(config.data);
15     
16     vm.handlemount();
17     return config;
18 ,(err)=>
19     Promise.reject(err);
20 )
21 
22 
23 server.interceptors.response.use((res)=>
24     if(res.statusText=="OK")
25         vm.handleDestory();
26         return res.data
27     
28 ,(err)=>
29     Promise.reject(err);
30 )
31 
32 
33 export default (method,url,data=)=>
34     if(method.toUpperCase()=="GET")
35         return server.get(url,
36             params:data
37         )
38     else if(method.toUpperCase()=="POST")
39         return server.post(url,data);
40     
41 

数据请求

1 http("get", "/client/v1/goods/newactivityTemplate?aTId=130").then(data => 
2 
3     )    

上面方法可以进行封装

API文件中movie.js文件中的内容为

import http from "utils/http.js"


export const city_api = ()=>http("get","/api/cityList")

export const movie_coming_api = (cityId=10)=>http("get","/api/movieComingList",cityId:cityId)

在请求接口数据的时候的代码为

import city_api from "api/movie"
 
async created() if(!sessionStorage.getItem("comingList")) let data = await movie_coming_api(this.cityId); this.comingList = data.data.comingList; sessionStorage.setItem("comingList",JSON.stringify(data.data.comingList)) , async handleGetCityAction(commit) let data = await city_api(); commit("handleGetCityMutation",data.data.cities)

 

以上是关于封装axios的接口请求数据方法的主要内容,如果未能解决你的问题,请参考以下文章

vue防止接口重复请求实现方法

vue封装接口

axios请求方法封装.

vue接口捕获异常封装

axios对请求各种异常情况处理的封装方法

记vue中封装axios