Vue Axios Http 工具包 封装

注意事项

1.http.js 放在 src 下 避免出现 vue 全局变量无法使用

//导入 axios
import axios from 'axios';

export function post(method) {
    return new Promise((resolve, reject) => {
        axios.post(host + String(method), data = null, Headers = {contentType: "application/json; charset=utf-8"}
        ).then(res => {
            resolve(res.data.result);
        }).catch(err => {
            reject(err.data)
        });
    });
}

/*前端使用 注意关键字 async 和 await
*     async login() {
* //参数类型
// let works = {
//     workContent: this.$refs.ue.msg,
//     empId: this.user.id,
//     itemId: 1,
//     username: this.user.qname
//   };
let data = await postp('login', works);
* */
// post 请求 携带参数
export function postp(method, params) {
    return new Promise((resolve, reject) => {
        axios.post(host + String(method),  
         params = (JSON.parse(JSON.stringify(params))),
         Headers = {contentType: 'application/json; charset=utf-8'}
      ).then(res => {
            resolve(res.data.result);
        }).catch(err => {
            reject(err.data)
        });
    });
}

//delete 请求 携带参数
export function deletep (method, params) {
  return new Promise((resolve, reject) => {
    axios.delete(host + String(method), {
      Headers: {contentType: 'application/json; charset=utf-8'},
      params: params
    }).then(res => {
      resolve(res.data.result)
    }).catch(err => {
      reject(err.data)
    })
  })
}
export function get(method) {
    return new Promise((resolve, reject) => {
        axios.get(host + String(method)
        ).then(res => {
            resolve(res.data.result);
        }).catch(err => {
            reject(err.data)
        })
    });
}

//参数类型
// let params = new URLSearchParams();
// params.append("username", this.username);
// params.append("password", this.password);
// let result = await getp("login", params);
//请求注意 同步async  await 关键字

export function getp(method, params) {
    return new Promise((resolve, reject) => {
        axios.get(host + String(method), {
            params: params
        }).then(res => {
            resolve(res.data.result);
        }).catch(err => {
            reject(err.data)
        })
    });
}

//put请求
export function putp (method, params) {
  return new Promise((resolve, reject) => {
    axios.put(host + String(method),  
     params = (JSON.parse(JSON.stringify(params))),
      Headers = {contentType: 'application/json; charset=utf-8'}
    ).then(res => {
      console.log('res.data.result')
      console.log(res.data.result)
      resolve(res.data.result)
    }).catch(err => {
      reject(err.data)
    })
  })
}

 
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值