wx-小程序中封装的网络请求

本文详细介绍了微信小程序中使用post和get方法进行网络请求的具体实现,包括如何设置header、处理不同HTTP状态码以及错误情况下的响应处理。同时,提供了具体的使用示例。

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

1.post方法

function postdata(url, params){

  return new Promise((resolve, reject) => {
    wx.showLoading({
      title: '正在加载',
    })

    let ss = '';
    if (url != 'Login/wxlogin' && getToken() != null) {
      ss = getToken();

    } 
    var header = {
      'content-type': 'application/x-www-form-urlencoded',
      'sid': ss
    };
    wx.request({
      url: getApp().globalData.baseurl + url,
      data: params,
      method: "POST",
      header: header,
      success: function (res) {
        if (res.data) {
          /** start 根据需求 接口的返回状态码进行处理 */
          if (res.data.success == 1) {
            resolve(res.data);
            
          } else if (res.data.success == 10) {//未登录
            wx.hideLoading();
            //跳转到登录界面
            wx.redirectTo({
              url: '../log/log'
            })


          } else {
            reject(res.data);
           
          }
          /** end 处理结束*/
        }
        wx.hideLoading();
      },

      fail: function (error) {
        wx.hideLoading();
        reject('');
      }
    })

  });
}

使用:

$.post('api/ArticleClass/index', { page: '1', limit: '2', id: '22' }).then(res => {
      this.setData({ adscenter: res.data[0].child });

    });

 

2.get方法


function getdata(url, params) {

  return new Promise((resolve, reject) => {
    wx.showLoading({
      title: '正在加载',
    })

     let ss='';
    if (url != 'Login/wxlogin' && getToken() != null) {
      ss = getToken();

    } 
    var header = {
      'content-type': 'application/x-www-form-urlencoded',
      'sid': ss
    };
    wx.request({
      url: getApp().globalData.baseurl + url,
      data: params,
      method: "GET",
      header: header,
      success: function (res) {
        if (res.data) {
          /** start 根据需求 接口的返回状态码进行处理 */
          if (res.data.success == 1) {
            resolve(res.data);

          } else if (res.data.success == 10) {//未登录
            wx.hideLoading();
            //跳转到登录界面
            wx.redirectTo({
              url: '../log/log'
            })


          } else {
            reject(res.data);

          }
          /** end 处理结束*/
        }
        wx.hideLoading();
      },

      fail: function (error) {
        wx.hideLoading();
        reject('');
      }
    })

  });
}

 

使用

$.get('api/Ad/index', { page: this.data.page, limit: '10' }).then(res => {
      this.setData({ ads: res.data });

    });

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值