axios接口请求封装

import axios from 'axios';

class requstHelper {
  static fetch = (url, data, option = {}) => {
    console.log(option.isLocation ? url : `${process.env.API_HOST}${url}`);
    console.log('请求', data);

    let reuestDataName = 'data';
    if (option.method === 'GET') {
      reuestDataName = 'params';
    }
    return new Promise((resovle, reject) => {
      axios({
        url: option.isLocation ? url : `${process.env.API_HOST}${url}`, // 请求地址
        headers: option.header ? option.header : {},
        [reuestDataName]: data,
        method: option.method ? option.method : 'POST',
        dataType: option.dataType ? option.dataType : 'json',
      }).then((rep) => {
        console.log('请求响应', rep);
        const repData = rep.data;
        if (repData.code === 1 || repData.code === 200 || repData.type==="FeatureCollection") {
          resovle(repData);
        } else {
          const message = repData.message || repData.msg;
          reject(message);
        }
      }).catch((err) => {
        reject(err);
      });
    },
    );
  }
}

export default requstHelper;

 

posted @ 2022-05-24 14:08  潇潇-lucky  阅读(169)  评论(0编辑  收藏  举报