简单的axios请求的封装

  1. 第一步是引入 axios
import axios from 'axios'
  1. 赋值地址
const host = 'http://xxx.xxx.xxx/xxx'
export { host }
  1. 函数
function request (url, method, data, header = {}) {
  return new Promise((resolve, reject) => {
// 传送的参数
    return axios({
      method: method,
      url: host + url,
      data: data,
      header: {
        'content-type': 'application/json' // 默认值
      }
    }).then((res) => {
// 成功回调
      resolve(res.data)
    }).catch(error => {
// 失败回调
      reject(error)
    })
  })
}
  1. 调用方法及类型
// get请求
export function get (url, data) {
  return request(url, 'GET', data)
}
// post请求
export function post (url, data) {
  return request(url, 'POST', data)
}

  • 文件上传代码行数封装

本地储存token示例: window.localStorage.setItem('token', token)

 function(url, file) {
// token 储存在哪里就在哪里获取
    const token = window.localStorage.getItem('token')
    return new Promise((resolve, reject) => {
      axios({
        url: baseUrl + url,
        filePath: file.url,
        name: 'multipartFile',
        header: {
          Authorization: `Bearer ${value}`
        },
        success(res) {
          resolve({
            ...file,
            type: '0',
            url: JSON.parse(res.data).data.uploadResult
          });
        },
        fail(e) {
          reject(e);
        }
      });
    });
  }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容