我们做项目时,虽然爱可信也可以直接拿来用,但是对接口比较零散,不太好进行维护,也会产生大量的重复代码,所以我在这对爱可信进行了统一接口处理
第一步,先在科学研究委员会中的公共文件夹中如实用工具里新建request.js文件
从axios '导入axios '从@/路由器/路由器'导入路由器'从元素-ui '导入存储'导入{通知,消息框}./store ' import { getToken } from ' @/utils/auth ' import Config from ' @/Config ' import { baseURl } from ' @/utils/env '//创建爱可信实例const service=axios。创建({ baseURl : baseURl,//api的base _ URL//base URL :进程。环境。base _ API,//api的base _ URL超时:配置。超时/请求超时时间}) //请求拦截器服务。拦截器。请求。使用(config={ if(getToken()){ config。标题['授权']='承运人' getToken()//让每个请求携带自定义代币请根据实际情况自行修改}配置。标题['内容类型']='应用程序/JSON '返回配置}, 错误={ //用请求错误控制台做些什么。日志(错误)//用于调试。承诺。拒绝(错误)}) //响应拦截器服务。拦截器。回应。使用(response={ const code=response。状态控制台。日志(响应)如果(代码200 ||代码300){通知。错误({ title :响应。message })返回承诺。拒绝('错误')}否则{返回响应。数据},错误={让代码=0尝试{代码=错误。回应。数据。status } catch(e){ if(错误。tostring().indexOf('Error:超时')!==-1) {通知。错误({ title: '网络请求超时,工期: 2500 })返回承诺。拒绝(错误)} if (error.toString().索引('错误:网络错误')!==-1) {通知。错误({ title: '网络请求错误,工期: 2500 })返回承诺。拒绝(错误)} }如果(代码===401) { MessageBox.confirm('登录状态已过期,您可以继续留在该页面,或者重新登录', '系统提示,{ confirmButtonText: '重新登录,取消按钮文本: '取消,键入: '警告' }).然后(()={ store。派单(“LoGo”).然后(()={ location.reload() //为了重新实例化某视频剪辑软件路由器对象避免bug })})else if(代码===403){路由器。push({ path : '/401 ' })else { const error msg=error。回应。数据。消息if(错误消息!==未定义){通知。错误({ title :错误消息,持续时间: 2500 })} }返回Promise。拒绝(错误)})导出默认服务
代码解读:
将接口统一放到单独的文件中如我的
引入request.js
第三步,
在页面使用
好了,这就是爱可信的二次封装
以上就是关于某视频剪辑软件中爱可信的二次封装的全部知识点内容,感谢大家的学习和对我们的支持。