前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >uniapp 封装请求

uniapp 封装请求

作者头像
老K博客
发布2024-04-26 10:33:59
1200
发布2024-04-26 10:33:59
举报
文章被收录于专栏:老K博客老K博客

根目录下新建 util文件夹:

uniapp封装
uniapp封装

里面两个js文件:request.js 和 api.js

1662a26a6a9112
1662a26a6a9112

接下来 开始cv:

打开request.js 拷贝:

代码语言:javascript
复制
// 请求接口 换成你自己的 (仅为示例 非真实接口)
const commoneUrl = "http://test.cn/api/";

//get请求封装
function getRequest(url, data) {
  var promise = new Promise((resolve, reject) => {
    var postData = data;
    uni.request({
      url: commoneUrl + url,
      data: postData,
      method: "GET",
      dataType: 'json',
      header: {
        'content-type': 'application/json',
        token: uni.getStorageSync('token') || ''
      },
      success: function(res) {
        if (res.statusCode === 200) {
          resolve(res.data);
        } else {
          resolve(res.data)
        }
      },
      error: function(e) {
        reject('网络出错');
      }
    });
  });
  return promise;
}
//post请求封装
function postRequest(url, data) {
  var promise = new Promise((resolve, reject) => {
    var postData = data;
    uni.request({
      url: commoneUrl + url,
      data: postData,
      method: 'POST',

      header: {
        'content-type': 'application/json',
        token: uni.getStorageSync('token') || ''
      },
      success: function(res) {
        if (res.code === 200 && res.code == 0) {
          resolve(res.data);
        } else {
          resolve(res.data)
        }
      },
      error: function(e) {
        reject('网络出错');
      }
    })
  });
  return promise;
}
module.exports = {
  postRequest,
  getRequest
}

然后打开 api.js 拷贝:

代码语言:javascript
复制
// 导入上面封装的请求
const request = require('../util/reuqest.js') 

// 获取用户信息的请求方法 get类型
var getUser = function(){
  return request.getRequest('user');   //user---接口名称
}

// 获取列表的请求方法 post类型
var getList = function(){
  return request.postRequest('list');   //list---接口名称
}

// 导出所有的请求方法(与上面的函数名称对应)  以便在其他组件使用此请求方法
module.exports = {
  getUser,
  getList
}

使用请求方法:

代码语言:javascript
复制
  // 导入需要的方法 例如这里需要 获取用户信息 
  // 所以导入的是 getUser方法 导入名称与api里面导出的一致
  import {getUser} from '@/util/api.js'
  export default {
    data() {
      return {
        userInfo:''
      }
    },
    onShow(){
      this.userInfo()
    },
    methods: {
      // 调用获取用户信息
      userInfo(){
        getUser().then(res=>{
          console.log('用户信息',res);
          this.userInfo = res.data
        })
      }
    }
  }

本文共 206 个字数,平均阅读时长 ≈ 1分钟

本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024年04月25日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 打开request.js 拷贝:
  • 然后打开 api.js 拷贝:
  • 使用请求方法:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com