wx.request工具类

const app = getApp()
const request = (url, options) => {
  return new Promise((resolve, reject) => {
    wx.showLoading({
      title: '数据请求中...',
      mask: true
    })
    wx.request({
      url: `${app.globalData.host}${url}`,
      method: options.method,
      data: options.method === 'GET' ? options.data : JSON.stringify(options.data),
      header: {
        'Content-Type': 'application/json; charset=UTF-8',
        'Authorization': 'Bearer ' + app.globalData.session.token // 请求携带token
      },
      success(request) {
        wx.hideLoading()
        if (request.data.code === 20000) {
          resolve(request.data)
        } else {
          reject(request.data)
        }
      },
      fail(error) {
        wx.hideLoading()
        reject(error.data)
      }
    })
  })
}

const get = (url, options = {}) => {
  return request(url, {
    method: 'GET',
    data: options
  })
}

const post = (url, options) => {
  return request(url, {
    method: 'POST',
    data: options
  })
}

const put = (url, options) => {
  return request(url, {
    method: 'PUT',
    data: options
  })
}

// 不能声明DELETE(关键字)
const remove = (url, options) => {
  return request(url, {
    method: 'DELETE',
    data: options
  })
}

module.exports = {
  get,
  post,
  put,
  remove
}

使用方法

1. 配置域名
在全局变量下添加字段名为‘host’的请求接口地址。

App({
   onLaunch: function() {
   },
   globalData: {
       host: '请求接口地址',
   }
})

2. 引入request工具类

get请求例子
import http from '工具类路径'
http.get('请求地址').then(res => {
  //请求成功回调
  console.log(res)
}).catch(err => {
  //请求失败回调
  console.log(err)
})
post请求例子
import http from '工具类路径'
http.post('请求地址',data).then(res => {
  //请求成功回调
  console.log(res)
}).catch(err => {
  //请求失败回调
  console.log(err)
})

本文转载自@ 鲸I落

Last modification:August 12th, 2020 at 11:26 pm
如果觉得我的文章对你有用,请随意赞赏