仿axios封装微信( wx.request)请求
发布于 5 年前 作者 min12 2714 次浏览 来自 分享
直接贴代码

export const url = '接口请求地址'

export function axiosAPI (url, data, type) {
  return new Promise(function(resolve, reject) {
    wx.request({
      url: url,
      data: data,
      header: {
        token: wx.getStorageSync('token')
      },
      method: type,
      success: function (res) {
        if (res.data.errorCode === 10004) {
        // 根据约定处理(过期。。。)处理
        } else {
          resolve(res.data)
        }
      },
      fail: function () {
        reject('网络错误')
        wx.showToast({
          icon: 'none',
          title: '网络错误'
        })
      }
    })
  })
}

// 登陆
export const wechatAuth = (data) => {
// 路径,参数,请求方式
  return axiosAPI(`${url}wechat/auth`, data, 'POST')
}

使用

// 引入接口
import { wechatAuth } from '../utils/api'
// 使用
let getData = {}
wechatAuth(getData).then(res => {
	if (res.errorCode === 0) {
	} else {}
})
2 回复

可以再添加一个重复请求的取消操作哟

和我目前封装的类似,有几点还是有区别的

1.methods 有个默认值(post,get都可以,根据业务调整)

2.data 可以加其他自定义全局请求的参数

3.可以自定义header中的content-type 如果遇到 Form data这种类似格式,还要做处理

4.action 和 api 分离,api单独抽离出一个js进行管理

回到顶部