mpvue用promise封装小程序请求(同样使用于vue的项目)

本文介绍了一种在Vue项目中封装POST请求的方法,利用axios和qs库进行数据序列化,适用于不同API调用,展示了如何配置域名、请求参数及处理响应。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



import qs from 'qs'
let api = {
  //域名配置
  webUrl: "默认ip",
  post:function(vueObj,options){//post请求
    wx.showLoading({
      title: '加载中' // 数据请求前loading
    })
    var ipName='';
    !options.newUrl?ipName=this.webUrl:ipName=options.newUrl;
    return new Promise(function(resolve, reject) {
      wx.request({
        url:ipName+options.url, // 仅为示例,并非真实的接口地址
        data:qs.stringify(options.arg),
        method:'POST',
        header: {
          'content-type': !options.contentType?'application/json':options.contentType // 默认值
        },
        success: function (res) {
          wx.hideLoading()
          resolve(res.data)
        },
        fail: function (err) {
          wx.hideLoading()
           reject(err)
        },
        complete: function () {
          wx.hideLoading()
        }
      })
    })

  }
 
}
export default api

上面写法同样使用于vue项目,将wx.request改axios请求就好

post:function(vueObj,options){//post请求
     var ipName='';
     !options.newUrl?ipName=gob.webUrl:ipName=options.newUrl;

     return new Promise(function(resolve, reject) {
       axios.post(ipName+options.url,qs.stringify(options.arg))
          .then(function (response) {
            resolve(response.data);
          })
          .catch(function (error) {
            reject(error);
          });
    })
   },

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值