yaoxfly-request
介绍
基于 axios/flyio 封装的一个请求库,支持 web、app、小程序(使用 fiyio 做请求)等 http 请求; 支持 restFul 接口 可发送,get post patch put delete 等请求; 支持 axios 和 fly.js 库的切换可进行拦截处理,自动弹出, http 请求错误、请求异常信息,未登录拦截等,具体实现通过配置参数、方法等实现。
安装教程
npm i yaoxfly-request
前期准备
在 src(源代码)文件夹新建 request 文件夹并在里面建立 index.js 文件,参考配置方案稍后详见。
restFul api 请求方法
- get
this$YxRequest ;
- post 请求
this$YxRequest ;
- patch 请求
this$YxRequest ;
- put 请求
this$YxRequest ;
- delete 请求
this$YxRequest ;
- 全部请求 可传各种类型请求, 可添加 headers 参数
this$YxRequest ;
- 上传文件类型的请求 只能是 post 提交 可添加 headers 参数
this$YxRequest
方法参数说明
在 this.$YxRequest 可调用的方法的里参数说明
参数 | 类型 | 说明 | 是否必填 |
---|---|---|---|
url | String | api 地址 | true |
param | Object | 后台 接收的参数 | true |
config | Object | 扩展配置项 添加如 qs、loading 等配置 | false |
type | String | 请求类型 如 get、post、patch、put、delete 等,当前参数只有 requests 方法可设置, 默认是 post | false |
config 配置参数说明
参数 | 类型 | 说明 | 是否必填 |
---|---|---|---|
loading | Boolean | 当前请求是否开启 loading 默认是 true | false |
qs | Boolean | 是否开启 qs 强转 默认是 true | false |
headers | Object | 传 headers 参数 默认是 {}, 当前参数只有 submitFormData、requests 方法可设置 | false |
timeout | Number | 超时时间 默认为 0 无限制 当前参数只有 submitFormData 方法 能设置 | false |
request/index.js 配置说明
- 在 request/index.js 文件里引入 yaoxfly-request
;Vue; ;
- 在 main.js 文件里
; router store YxRequest //当前名字不可更改 一定要YxRequest ;
- request/index.js 配置参考
;;;;Vue;const $this = ; //实例化 vue,普通的 this 用不了const ONLINE_DOMAN_NAME = windowlocationprotocol + "//" + windowlocationhost; //协议加域名let loading = ""; //动画const fly = ; ;
tips:当前 loading 使用的是 elementUi 的动画可自行修改,需要下载 flyio/axios、qs、elementUi。
配置参数
- 请求配置 requestConfig *
requestConfig: request: '' //请求名 flyio/axios type: '' //请求类型 qs: '' //qs headers: {}//请求头 timeout: 30000 //请求超时 baseURL:'' //基础地址 withCredentials: true //是否跨域携带cookie
- 请求拦截 loading 配置 *
loading: isLoading: true //是否开启动画 limitTime: 200 //接口请求在 xxxms 内完成则不展示 loading {//动画展示 请求拦截前 } {//动画关闭 请求拦截后 }
- 请求错误 resError 配置 *
resError: key: '' // 与后台规定的状态码的值 msg: '' //与后台规定的消息值 value: '' // 与后台规定的表示登录失败的 code 值 { // 接口异常提示的方法 http请求错误提示 } { //登录失败提示并设置跳转到登录 界面 } { //后台接口请求不成功的提示 不是异常错误 比如电话不能为空等提示 }
- 路由权限 accessControl 配置
//路由登录权限控制 (可以让路由不需要登录,也可跳转) 返回值是 false不需要验证 true 需要验证accessControl: {};
tips:以上不打*号的不是必须配置可自行决定是否配置