小程序封装request

351 阅读1分钟

新建文件

在utils文件下新建request.js

request.js

function request(url, data, method='GET'){
  return new Promise((reslove, reject) => { 
    wx.request({
      url:url,
      data:data,
      method: method,
      success(res) {
        const isSuccess = isHttpSuccess(res.statusCode);
        if (isSuccess) {  // 成功的请求状态
          reslove(res);
        } else {
          reject({
            msg: `网络错误:${r.statusCode}`,
            detail: res
          });
          console.log('isSuccess失败')
        }
      },
      fail(err) {
        reject(err);
        console.log('request失败')
      },
      complete(res){

      }
    });
  });
}
function isHttpSuccess(status) {
  return status >= 200 && status < 300 || status === 304;
}
function errPicker(err) {
  if (typeof err === 'string') {
    return err;
  }
  return err.msg || err.errMsg || (err.detail && err.detail.errMsg) || '未知错误';
}

const apiUrl = 'xxxxx';
const R = {
  postUserInfo(data, method) {
    const url = `${apiUrl}/users/post_user_info`
    return request(url, data, method); 
  }
}
module.exports = R; 

index.js

开头引用

const app = getApp()
const R = require('../../utils/request.js');

文中使用

       let userData=xxx;
       R.postUserInfo(userData, 'post').then(res => {
          if (res.data.code == 0) {
            console.log('用户信息上报成功');
          }
          else if (res.data.code == -100)
            console.log('用户信息上报失败');
        })