vue 2.x axios 封装的get 和post方法

import axios from 'axios'
import qs from 'qs'

export class HttpService {

    Get(url, data) {
        return new Promise((resolve, reject) => {
            axios.get(url, {
                params: data
            }).then((res) => {
                if (res) {
                    //成功回调
                    resolve(res);
                }
            }).catch((error) => {
                reject(error);
            })
        })
    }
    Post(url, data) {
        return new Promise((resolve, reject) => {
            axios.post(url, qs.stringify(data), {
                headers: {
                    'Content-Type': 'application/x-www-form-urlencoded',
                    'Accept': 'application/json'
                }
            }).then((res) => {
                if (res) {
                    //成功回调
                    resolve(res);
                }
            }).catch((error) => {
                reject(error);
            })
        })
    }
}            

 postfile方法

PostFlie(url, data) {
        return new Promise((resolve, reject) => {
            //根据data对象生成FormData对象
            var temp = new FormData();
            for (var t in data) {
                temp.append(t, data[t]);
            }
            axios.post(url, temp).then((res) => {
                if (res) {
                        resolve(res.Data);
                }
            }).catch((error) => {
                reject(error);
            })
        })
    }

 

posted @ 2018-02-28 10:29  浮缠  阅读(556)  评论(0)    收藏  举报