1.4.0 • Published 4 years ago

spider_req v1.4.0

Weekly downloads
1
License
MIT
Repository
-
Last release
4 years ago

通用请求工具

支持

  • 请求地址统一包装
  • 统一处理响应
  • 统一处理错误
  • 定制不同平台配置项
  • 挂载至指定对象

语法

以包装 uni-app 请求api 为例;

方式1:作为对象导出,自行决定存放位置。

import initializer from 'spider_req';
// 初始化实例
const options = {
  host: 'https://my-server-host.com',
  layout: '/api/v1/',
  extraData: {token: 'ASDFGHJKL'},
  beforeSuccess: (res)=>{
      console.log('成功拦截器,成功之前统一调用')
  } 
};

const myRequest = initializer(uni.request,options);

// 使用
// 示例1:获取商品列表
myRequest({
  url:'/products',
  method: 'GET',
  data: {
    someData:'someData'
  },
  success: (res)=>{
    console.log('响应成功了')
  } 
});

// 根据提供的 options 上面的请求会执行如下操作:
// 1、请求地址包裹为:
// "https://my-server-host.com/api/v1/products"
// 2、请求数据包裹为:
// { someData:'someData', token:'ASDFGHJKL' }
// 3、请求的响应将会被拦截函数拦截,执行完毕后才会执行success函数。即控制台输出为:
// '成功拦截器,成功之前统一调用'
// '响应成功了'

方式2:挂在至指定对象。

 import initializer from 'spider_req';

 // 仅需要将初始化器中传入需要挂载的instance即可。 
 initializer(uni.request,options,uni); // 在第三个参数传入挂载点,这里以 uni 对象为例。

 // 使用:
 
 uni.req({
   url:'/products',
   method: 'GET',
   data: {
     someData:'someData'
   },
   success: (res)=>{
     console.log('响应成功了')
   } 
 });

初始化器中可选的options

  • extraData : 要追加到请求参数中的固定参数。
  • beforeSuccess : 成功前钩子函数。
  • beforeFail : 失败前钩子函数。
  • beforeSend : 发送前钩子函数。
  • sendPreHandler : 发送前预处理。将会发送该函数 return 出来的值。
  • receivePreHandler : 接受时预处理。工作原理同上。
  • appendDataFrom : 所有请求追加参数的函数,每次发送都会调用该函数,该函数返回值将会被携带在请求中。适用于动态固定参数。
  • resetSchema : 重置语法。
  • handlerDelay : 所有处理函数延迟执行。单位毫秒。
  • indices : 默认false。即get请求参数被序列化时是否带数组索引。

可选的重置语法以及默认值

{
  "url": "url",
  "data": "data",
  "header": "header",
  "method": "method",
  "dataType": "dataType",
  "responseType": "responseType",
  "sslVerify": "sslVerify",
  "success": "success",
  "fail": "fail",
  "complete": "complete"
}

每次请求可以接受的额外参数

  • skipBeforeFail : 该请求跳过全局的beforeFail。
  • skipBeforeSend : 原理同上。
  • realSuccess : 逻辑上的请求成功函数。即相应status < 400 时调用。常规的success是网络通了就视为成功。
  • statusFail : 逻辑上的请求失败函数。即相应的status >= 400 时调用。

重新初始化

重新初始化会自动销毁原对象(仅适用于以挂载点的方式初始化),然后用新的配置进行初始化。

1.4.0

4 years ago

1.3.0

4 years ago

1.2.3

4 years ago

1.2.2

4 years ago

1.2.1

4 years ago

1.2.0

4 years ago

1.1.6

4 years ago

1.1.5

4 years ago

1.1.4

4 years ago

1.1.3

4 years ago

1.1.2

4 years ago

1.1.1

4 years ago

1.1.0

4 years ago

1.0.11

4 years ago

1.0.10

4 years ago

1.0.9

4 years ago

1.0.8

5 years ago

1.0.7

5 years ago

1.0.6

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago

1.0.0

5 years ago