提交 ea2b8a74 编写于 作者: M mehaotian

update: 新增拦截器 api

上级 701ce345
......@@ -5,6 +5,7 @@
* [uni.arrayBufferToBase64](api/arrayBufferToBase64?id=arraybuffertobase64)
* [生命周期](api/lifecycle.md)
* [应用级事件](api/application.md)
* [拦截器](api/interceptor.md)
* 网络
* [发起请求](api/request/request.md)
* [上传、下载](api/request/network-file.md)
......
### uni.addInterceptor(STRING, OBJECT)
添加拦截器
**STRING 参数说明**
需要拦截的`api`名称,如:`uni.addInterceptor('request', OBJECT)` ,将拦截 `uni.request()`
**OBJECT 参数说明**
|参数名 |类型 |必填 |默认值 |说明 |平台差异说明 |
|:- |:- |:- |:- |:- |:- |
|invoke |Function |否 | |拦截前触发 | |
|success |Function |否 | |成功回调拦截 | |
|fail |Function |否 | |失败回调拦截 | |
|complete |Function |否 | |完成回调拦截 | |
**示例**
```javascript
uni.request({
url: 'request/login', //仅为示例,并非真实接口地址。
success: (res) => {
console.log(res.data);
// 打印: {code:1,...}
}
});
uni.addInterceptor('request', {
invoke(args) {
// request 触发前拼接 url
args.url = 'https://www.example.com/'+args.url
},
success(args) {
// 请求成功后,修改code值为1
args.data.code = 1
},
fail(err) {
console.log('interceptor-fail',err)
},
complete(res) {
console.log('interceptor-complete',res)
}
})
```
### uni.removeInterceptor(STRING)
删除拦截器
**STRING 参数说明**
需要删除拦截器的`api`名称
**示例**
```javascript
uni.removeInterceptor('request')
```
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册