Vue实战038:api接口模块化统一管理

 时间:2024-10-22 11:48:07

1、随着适用了Vue,这时我们就会把api提取出来,用一个api.js文件来统一存放api接口,通过expot导出对应的接口,然后在用到的组件中引用该接口,这样当我们需要修改接口时只要到api文件中去统一处理即可,也方便我们了解项目中实现了哪些功能,目前这个项目是定义了一个baseURL,然后与接口进行拼接生成一个常量api,再将其导出给其他组件调用。

Vue实战038:api接口模块化统一管理

2、如果你的项目对axios进行了封装,那么我们这里还可以对api进一步优化,我们可以在封装的axios设置好基本路由,这样当我们拿到api后系统会为我们自动拼接路由,同时还可以统一的异常处理方案简化了每个请求书写,提高代码的可读性。如何封装axios可以参考文章Vue实战037:axios二次封装和使用,

Vue实战038:api接口模块化统一管理

3、接下来我们继续优化api管理,继续拿我们的登陆接口来解析:http://127.0.0.1:8000/login/ ,这里可以分为4部分,分别是支持的协议(http协议),ip(127.0.0.1),端口(8000),路由(login/),假设每个api都是从同一台服务发出的,那么每个接口的协议、ip和端口都是一样的,这时我们就可以通过axios.defaults.baseURL = 'http://127.0.0.1:8000/'统一指定。

Vue实战038:api接口模块化统一管理

4、如何定义api模块这里我们准备将axios.js引入api.js中,然后调用axios.js中的接口,接口需要提供3个参数,分别是method、url、params,这里可以用箭头函数,写起来简单。这样我们就定义了一个login方法,只需要传入method和params参数即可。

Vue实战038:api接口模块化统一管理

5、如何使用在组件中导入api中的方法,用到哪个调用哪个即可。然后再事件中调用我们的login方法,传入对应的method和params参数接口,是不是比之前简单又简洁了很多,封装还有 个好处就是可以很好的避开操作token,这样就不用在每个接口都手动的提交token操作了。

Vue实战038:api接口模块化统一管理

6、总结 结合axios二次封装,我们可以简化很多对接口这方面的处理,API进行了统一的管理,常用的异常事件也在封装中进行了统一的处理,这样我们每次触发接口的时候就只需要考虑正常返回的事件状态了。

  • 30平客厅吊顶多少钱预算足够?
  • 如何对电脑桌面背景进行调整
  • c3p0数据库连接池详解
  • 运维工作的四大纪律九项注意
  • java怎么读取pdf转成word文档、
  • 热门搜索
    重阳节手抄报简单 爱护眼睛手抄报 中秋节手抄报大全 关于手抄报的花边 平安校园手抄报图片 小学生手抄报版面设计图 儿童手抄报大全 善行历手抄报图片 61儿童节手抄报 国防教育手抄报图片