找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索本站精品资源

首页 教程频道 小程序开发 查看内容

小程序版结合promise的axios风格ajax请求函数

作者:模板之家 2018-10-19 10:45 2180人关注

建议的小程序版本的axios函数,之所以说简易,因为只是用了常用的请求方法外,然后添加了拦截器而已。 具体如下: wxhttp 命名为wxhttp 具体的请求用法如axios wxhttp#request(config) wxhttp#

建议的小程序版本的axios函数,之所以说简易,因为只是用了常用的请求方法外,然后添加了拦截器而已。
具体如下:

wxhttp


命名为wxhttp

具体的请求用法如axios

wxhttp#request(config)

wxhttp#get(url[,config])

wxhttp#delete(url[,config])

wxhttp#head(url[,config])

wxhttp#options(url[,config])

wxhttp#post(url[,data[,config]])

wxhttp#put(url[,data[,config]])

wxhttp#patch(url[,data[,config]])

拦截方法:

  1. 请求拦截

wxhttp.interceptors.request.use(handleRequest(config),handleError(err))

注意:handleRequest需要返回处理后的config

  1. 返回拦截

wxhttp.interceptors.response.use(handresponse(res))

注意:handleResponse需要返回处理后的res

例子:

import $http from "../../utils/http"
export default {
  name: 'seckillHome',
  data() {
    return {

    }
  },
  onShow() {
    // 请求拦截
    $http.interceptors.request.use(function (config) {
      console.log(`请求拦截`, config)
      // 此处设置的数据将与请求的数据进行合并,如果自动同名则以拦截的为准。
      config.data = {
        address: "北京市东城区"
      }
      return config
    })

    $http.post('https://www.baidu.com', {
      name: 'cdd',
      age: 23
    }).then(res => {
      console.log(`结果是`, res)
    })
  }
}

因为使用了promise风格,所以可以使用Promise.all方法来进行并发请求。



路过

雷人

握手

鲜花

鸡蛋
原作者: 模板之家 来自: 网络收集

全部回复(0)