title: RequestTask
sidebar_label: RequestTask
网络请求任务对象
支持情况:
.default})
方法
abort
中断请求任务
支持情况:
.default})
() => void
onHeadersReceived
监听 HTTP Response Header 事件。会比请求完成事件更早
支持情况:
.default})
(callback: Callback) => void
| 参数 | 类型 | 说明 |
|---|---|---|
| callback | Callback |
HTTP Response Header 事件的回调函数 |
offHeadersReceived
取消监听 HTTP Response Header 事件
支持情况:
.default})
(callback: Callback) => void
| 参数 | 类型 | 说明 |
|---|---|---|
| callback | Callback |
HTTP Response Header 事件的回调函数 |
onChunkReceived
监听 Transfer-Encoding Chunk Received 事件。当接收到新的chunk时触发。
支持情况:
.default})
(callback: Callback) => void
| 参数 | 类型 | 说明 |
|---|---|---|
| callback | Callback |
Transfer-Encoding Chunk Received 事件的回调函数 |
offChunkReceived
监听 Transfer-Encoding Chunk Received 事件。当接收到新的chunk时触发。
支持情况:
.default})
(callback: Callback) => void
| 参数 | 类型 | 说明 |
|---|---|---|
| callback | Callback |
Transfer-Encoding Chunk Received 事件的回调函数 |
参数
onHeadersReceived
Callback
HTTP Response Header 事件的回调函数
(result: CallbackResult) => void
| 参数 | 类型 |
|---|---|
| result | CallbackResult |
CallbackResult
| 参数 | 类型 | 说明 |
|---|---|---|
| header | TaroGeneral.IAnyObject |
开发者服务器返回的 HTTP Response Header |
onChunkReceived
Callback
Transfer-Encoding Chunk Received 事件的回调函数
(result: CallbackResult) => void
| 参数 | 类型 |
|---|---|
| result | CallbackResult |
CallbackResult
| 参数 | 类型 | 说明 |
|---|---|---|
| res | Response |
开发者服务器每次返回新 chunk 时的 Response |
Response
开发者服务器每次返回新 chunk 时的 Response
| 参数 | 类型 | 说明 |
|---|---|---|
| data | ArrayBuffer |
返回的chunk buffer |
示例代码
示例 1
回调函数(Callback)用法:
const requestTask = Taro.request({url: 'test.php', //仅为示例,并非真实的接口地址data: {x: '' ,y: ''},header: {'content-type': 'application/json' // 默认值},success: function (res) {console.log(res.data)}})requestTask.abort()
示例 2
Promise 用法:
const requestTask = Taro.request({url: 'test.php', //仅为示例,并非真实的接口地址data: {x: '' ,y: ''},header: {'content-type': 'application/json' // 默认值},success: function (res) {console.log(res.data)}})requestTask.then(res => {console.log(res.data)})requestTask.abort()
示例 3
async/await 用法:
const requestTask = Taro.request(params)const res = await requestTaskrequestTask.abort()
API 支持度
| API | 微信小程序 | 百度小程序 | 支付宝小程序 | 字节跳动小程序 | QQ 小程序 | H5 | React Native | Harmony |
|---|---|---|---|---|---|---|---|---|
| RequestTask | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ | |
| RequestTask.abort | ✔️ | |||||||
| RequestTask.onHeadersReceived | ✔️ | |||||||
| RequestTask.offHeadersReceived | ✔️ | |||||||
| RequestTask.onChunkReceived | ✔️ | |||||||
| RequestTask.offChunkReceived | ✔️ |
