uniapp封装get和post请求
时间: 2023-05-03 16:01:51 浏览: 80
UniApp封装了get和post请求,可以通过uni.request()函数来发送请求。其中get请求的参数可以通过拼接在url上,也可以通过params参数传递;post请求的参数则需要通过data参数传递。在uni.request()函数中可以设置请求头、超时时间、响应数据类型等。
相关问题
uniapp 封装request请求
在 UniApp 中封装 request 请求可以通过使用 uni.request 方法,并在其基础上进行封装。以下是一个简单的示例:
1. 创建一个名为 "api.js" 的文件,用于封装请求:
```javascript
const baseUrl = 'https://api.example.com'; // 请求的接口地址
export const request = (url, method = 'GET', data = {}) => {
return new Promise((resolve, reject) => {
uni.request({
url: baseUrl + url,
method: method,
data: data,
success: res => {
resolve(res.data);
},
fail: err => {
reject(err);
}
});
});
};
```
2. 在需要发送请求的地方引入 "api.js" 并调用封装好的 request 方法:
```javascript
import { request } from '@/api.js';
// 发送 GET 请求示例
request('/user', 'GET')
.then(res => {
console.log(res);
})
.catch(err => {
console.error(err);
});
// 发送 POST 请求示例
request('/user', 'POST', { name: 'John', age: 25 })
.then(res => {
console.log(res);
})
.catch(err => {
console.error(err);
});
```
以上示例中,我们通过封装的 request 方法发送了 GET 和 POST 请求,并且可以处理请求成功和失败的情况。
你可以根据自己的需求修改 baseUrl、request 方法中的参数和返回值处理逻辑,以适应不同的接口和业务场景。
uniapp 封装网络请求
Uniapp是一款跨平台的开发框架,可以同时开发小程序、H5、App等多个平台,因此它对于网络请求的封装也比较方便。下面是一个简单的网络请求封装示例:
1. 创建一个api.js文件,用来存放所有的接口地址和请求方法:
```
const baseUrl = 'https://api.example.com'
export default {
login: `${baseUrl}/login`,
getUserInfo: `${baseUrl}/user/info`,
// ...其他接口地址
}
```
2. 在utils文件夹下创建一个request.js文件,用来封装请求方法:
```
export default function request(url, data = {}, method = 'GET') {
return new Promise((resolve, reject) => {
uni.request({
url,
data,
method,
success: res => {
resolve(res.data)
},
fail: err => {
reject(err)
}
})
})
}
```
3. 在需要发送网络请求的地方引入api.js和request.js:
```
import api from '@/api/api.js'
import request from '@/utils/request.js'
// 发送一个 GET 请求
request(api.getUserInfo).then(res => {
console.log(res)
})
// 发送一个 POST 请求
request(api.login, {username: 'admin', password: '123456'}, 'POST').then(res => {
console.log(res)
})
```
通过这种方式封装网络请求,我们可以将所有的接口地址和请求方法统一管理,让代码更加清晰易懂。