最简单的微信小程序封装ajax

封装ajax

前言

使用小程序的 API wx.request 调用接口时,总是没有 Promise 用得顺手,何不将 wx.request 封装成返回一个 Promise 的函数,说干就干。

代码

  • 保存登录接口返回的 cookie
wx.setStorageSync("sessionid", res.header["Set-Cookie"])
  • 封装ajax的代码
// ajax.js
const DEFAULT_HEADER = {
  'content-type': 'application/json',
}
// 接口所在域名
const BASE_URL = 'http://localhost:3000'
// wx.getStorageSync("sessionid") 登录成功后服务器返回cookie,
// 保存在本地缓存中,若不需要就去除。

export const ajax = (api, params = {}, method = 'POST', header = {}) => {
  return new Promise((resolve, reject) => {
    wx.request({
      url: `${BASE_URL}${api}`,
      method: method,
      data: params,
      header: Object.assign(header, DEFAULT_HEADER, {'cookie': wx.getStorageSync("sessionid")}),
      success (res) {
        const data = res.data
        if (data) {
          if (data.code == 0) {
            resolve(data)
          } else if(data.code == 250){
            // 未登录
            wx.reLaunch({url: '/pages/login/login'})
            resolve(data);
          } else {
            resolve(data)
          }
        }
        resolve(res)
      },
      fail (res) {
        reject(res)
      }
    })
  })
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值