uni-app发起网络请求
uni.request(OBJECT)
发起网络请求
OBJECT 参数说明
参数名 | 类型 | 必填 | 默认值 | 说明 |
---|---|---|---|---|
url | string | 是 | 开发者服务器接口地址 | |
data | Object/String/ArrayBuffer | 否 | 请求的参数 | |
header | Object | 否 | 设置请求的 header,header 中不能设置 Referer。 | |
method | string | 否 | GET | (需大写)有效值:OPTIONS, GET, HEAD, POST, PUT, DELETE, TRACE, CONNECT |
dataType | string | 否 | json | 如果设为 json,会尝试对返回的数据做一次 JSON.parse |
responseType | string | 否 | text | 设置响应的数据类型。合法值:text、arraybuffer |
success | Function | 否 | 收到开发者服务成功返回的回调函数 | |
fail | Function | 否 | 接口调用失败的回调函数 | |
complete | Function | 否 | 接口调用结束的回调函数(调用成功、失败都会执行) |
success 返回参数说明
参数名 | 类型 | 说明 |
---|---|---|
data | Object/String/ArrayBuffer | 开发者服务器返回的数据 |
statusCode | Number | 开发者服务器返回的 HTTP 状态码 |
header | Object | 开发者服务器返回的 HTTP Response Header |
data 数据说明
最终发送给服务器的数据是 String
类型,如果传入的 data 不是 String 类型,会被转换成 String。转换规则如下:
- 对于
GET
方法,会将数据转换为query string
。例如{ name: 'name', age: 18 }
转换后的结果是name=name&age=18
。 - 对于
POST
方法且header['content-type']
为application/json
的数据,会进行JSON
序列化。
例如:
uni.request({
url: 'https://...',
data: {
name: 'name',
age: 18
},
header: {
'cus-header': 'hello' //自定义请求头信息
},
success: function (res) {
console.log(res.data);//输出
}
});
返回值
返回一个 requestTask 对象,通过 requestTask,可中断请求任务。
requestTask 对象的方法列表
方法 | 说明 |
---|---|
abort | 中断请求任务 |
例如:
const requestTask = uni.request({
url: 'https://...',
data: {
name: 'name',
age: 18
},
success: function (res) {
console.log(res.data);
}
});
// 中断请求任务
requestTask.abort();
还没有评论,来说两句吧...