微信小程序对request进行封装

微信小程序封装API

大家在写小程序时是不是都遇到了接口太乱,导致后期维护及其不方便,今天就告诉大家怎么封装api接口。

创建JS文件

这个文件名字随便起,我这的是叫fetch.js文件。
废话不多说上代码!!!

注意这个文件最好是在utils文件夹里面哦!!!

var API_BASE_URL = 'https://t-a.bldby.shop'  // 定义url,这个是域名
// var subDomain = 'bldby'   // 如果后期需要就把它加上  https://t-a.bldby.shop/bldby

const request = (url, needSubDomain, method, data) => {
  const _url = API_BASE_URL + (needSubDomain ? '' : '') + url
  // const _url = API_BASE_URL + (needSubDomain ? '/' + subDomain : '') + url  // 如果需要在添加的话就把 定义好的subDomain加上 
  
  return new Promise((resolve, reject) => {
    wx.request({
      url: _url,
      method: method,
      data: data,
      header: {
        'Content-Type': 'application/json',
      },
      success(request) {
        resolve(request.data)
        
      },
      fail(error) {
        reject(error)
      },
      complete(aaa) {
        // 加载完成
      }
    })
  })
}
/**
 * 小程序的promise没有finally方法,自己扩展下
 */
Promise.prototype.finally = function (callback) {
  var Promise = this.constructor;
  return this.then(
    function (value) {
      Promise.resolve(callback()).then(
        function () {
          return value;
        }
      );
    },
    function (reason) {
      Promise.resolve(callback()).then(
        function () {
          throw reason;
        }
      );
    }
  );
}
//以下是封装好的接口
module.exports = { 
  init2: (a, b) => {
    API_BASE_URL = a
    subDomain = b
  },
  init: (b) => {
    subDomain = b
  },
  request,
  // code
  code: (data) => {  //括号里的是传递的参数,如果不需要传参的话可以不写,但建议还是把它写上,反正不会报错
    return request(`/wx/getWxInfo`, true, 'get', data)
  },
  // 首页数据
  homePage: (data) => {
    return request(`/homePage/index`, true, 'get', data)
  },
}

以上内容有不懂的地方可以私信,也可以在下方评论哦!!!

最后小伙伴们别忘了!!点赞!!评论!!加收藏哦!!!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值