uni-app网络请求封装
时间: 2024-08-06 13:01:14 浏览: 58
uni-app封装请求完成示例项目
UniApp 的网络请求封装通常是为了简化开发者在应用中进行数据交互的工作流程,它会将底层的 HTTP 请求、错误处理以及缓存等复杂逻辑统一管理起来。UniApp 提供了 Vue 中常用的 axios 或者自家的 SDK(如 uRequest),对原生的 fetch API 进行了一层包装。
在 UniApp 中,你可以这样进行网络请求封装:
```javascript
// 使用axios进行封装
import axios from 'uni-axios';
const service = axios.create({
baseURL: process.env.BASE_URL, // api的base_url
timeout: 5000, // 请求超时时间
headers: {
'Content-Type': 'application/json'
}
})
export function request(url, data = {}, method = 'GET') {
return new Promise((resolve, reject) => {
service({url, data, method})
.then(response => {
if (response.data.code === 200) {
resolve(response.data.data)
} else {
reject(response.data.message || '请求失败')
}
})
.catch(error => {
reject(error.response.data.message || '网络请求出错')
})
})
}
// 调用示例:
request('/users', {id: 1}, 'POST').then(res => console.log(res))
```
阅读全文