Vue中Axios的封装和API接口的管理方法是什么(api,axios,vue,web开发)

时间:2024-05-02 17:16:02 作者 : 石家庄SEO 分类 : web开发
  • TAG :

一、axios的封装

在vue项目中,和后台交互获取数据这块,我们通常使用的是axios库,它是基于promise的http库,可运行在浏览器端和node.js中。他有很多优秀的特性,例如拦截请求和响应、取消请求、转换json、客户端防御XSRF等。所以我们的尤大大也是果断放弃了对其官方库vue-resource的维护,直接推荐我们使用axios库。如果还对axios不了解的,可以移步axios文档。

安装

npminstallaxios;//安装axios

引入

一般我会在项目的src目录中,新建一个request文件夹,然后在里面新建一个http.js和一个api.js文件。http.js文件用来封装我们的axios,api.js用来统一管理我们的接口。

//在http.js中引入axiosimportaxiosfrom'axios';//引入axiosimportQSfrom'qs';//引入qs模块,用来序列化post类型的数据,后面会提到//vant的toast提示框组件,大家可根据自己的ui组件更改。import{Toast}from'vant';

环境的切换

我们的项目环境可能有开发环境、测试环境和生产环境。我们通过node的环境变量来匹配我们的默认的接口url前缀。axios.defaults.baseURL可以设置axios的默认请求地址就不多说了。

//环境的切换if(process.env.NODE_ENV=='development'){axios.defaults.baseURL='https://www.baidu.com';}elseif(process.env.NODE_ENV=='debug'){axios.defaults.baseURL='https://www.ceshi.com';}elseif(process.env.NODE_ENV=='production'){axios.defaults.baseURL='https://www.production.com';}

设置请求超时

通过axios.defaults.timeout设置默认的请求超时时间。例如超过了10s,就会告知用户当前请求超时,请刷新等。

axios.defaults.timeout=10000;

post请求头的设置

post请求的时候,我们需要加上一个请求头,所以可以在这里进行一个默认的设置,即设置post的请求头为application/x-www-form-urlencoded;charset=UTF-8

axios.defaults.headers.post['Content-Type']='application/x-www-form-urlencoded;charset=UTF-8';
上一篇:怎么用Python实现自动化处理每月考勤缺卡数据下一篇:

28 人围观 / 0 条评论 ↓快速评论↓

(必须)

(必须,保密)

阿狸1 阿狸2 阿狸3 阿狸4 阿狸5 阿狸6 阿狸7 阿狸8 阿狸9 阿狸10 阿狸11 阿狸12 阿狸13 阿狸14 阿狸15 阿狸16 阿狸17 阿狸18