基于Promise封装uni-app的request方法,实现类似axio


uni-request

基于Promise封装uni-app的request方法,h5和小程序均可使用

特别之处

  • 支持Promise API
  • 拦截请求和响应
  • 转换请求和响应数据
  • 取消请求
  • 自动转换为JSON数据
  • 超时请求
  • 告别callback
  • 支持默认请求前缀
  • 支持并发请求

使用方式

uni-app框架中

安装(项目根目录下运行)

npm install uni-request --save

文件中引用

import uniRequest from 'uni-request';

使用方法

请求方法的别名

uniRequest.request(config) uniRequest.get(url[, config]) uniRequest.delete(url[, config]) uniRequest.head(url[, config]) uniRequest.options(url[, config]) uniRequest.post(url[, data[, config]]) uniRequest.put(url[, data[, config]]) uniRequest.patch(url[, data[, config]]) 

全局配置

uniRequest.defaults.baseURL = 'https://yourapi.domain.com'; uniRequest.defaults.headers.common['Authorization'] = AUTH_TOKEN; uniRequest.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded'; 

发送get请求

// 向具有给定ID的用户发出请求 uniRequest.get('/user?id=12345') .then(function (response) { console.log(response); }) .catch(function (error) { console.log(error); }); // 可选地,上面的请求也可以按照 uniRequest.get('/user', { data: { id: 'number' } }).then(function (response) { console.log(response); }).catch(function (error) { console.log(error); }); // 想要使用 async/await? 将`async`关键字添加到外部函数/method async function getUser() { try { const response = await uniRequest.get('/user?ID=12345'); console.log(response); } catch (error) { console.error(error); } } 

发送post请求

uniRequest.post('/user', { firstname : 'firstname', lastname : 'lastname' }).then(function (response) { console.log(response); }).catch(function (error) { console.log(error); }); 

以上就是基本用法,如果掌握了就可以使用了uni-request,下面是一份完整的代码示例包含了在uni-app中使用uni-request和vuex的详细用法,有问题可以评论区留言,会及时回复


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM