mpvue 小程序 http请求封装

普通请求

function request (url, method, data, header = {}) {
   wx.showLoading({
     title: '加载中' // 数据请求前loading
   })
  return new Promise((resolve, reject) => {
    wx.request({
      url: url , // 仅为示例,并非真实的接口地址
      method: method,
      data: data,
      headers: {
        'content-type': 'application/json' // 默认值
      },
      success: function (res) {
        wx.hideLoading()
        resolve(res.data)
      },
      fail: function (res) {
        wx.showToast({
          title:"请求失败,请检查网络",
          duration: 2000
        });
        reject(false)
        const url = '../error/main';
        mpvue.redirectTo({ url });
        wx.hideLoading()
      },
      complete: function () {
        wx.hideLoading()
      }
    })
  })
}

上传文件

function uploadFile (url, data, header = {}) {
  wx.showLoading({
    title: '上传中...' // 数据请求前loading
  })
  return new Promise((resolve, reject) => {
    wx.uploadFile({
      url: url, // 仅为示例,并非真实的接口地址
      filePath: data.file,
      name: 'file',
      formData: {
        'side': data.side
      },
      header: {
        "Content-Type": "multipart/form-data"//记得设置
      },
      success: function (res) {
        wx.hideLoading()
        resolve(JSON.parse(res.data))
      },
      fail: function (res) {
        wx.hideLoading()
        reject(false)
      },
      complete: function () {
        wx.hideLoading();
        console.log("完成")
      }
    })
  })
}
let get = (obj)=> {
  return request(obj.url, 'GET', obj.data)
}

let post = (obj)=> {
  return request(obj.url, 'POST', obj.data)
}

let fileStream = (obj)=> {
  return uploadFile(obj.url, obj.data)
}
export { post,get,fileStream };

注:开发工具中可不校验合法域名、web-view(业务域名)、TLS版本以及HTTPS证书

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值