近期项目封装get,post方式

 

config.js.js文件用来封装我们的 basUrl,

api.js用来统一管理我们的接口url,

http.js中封装axios,添加请求拦截和响应拦截。在请求拦截中,会给请求头添加token字段,还有loading动画的开启。在响应拦截中,可以做一些loading动画的关闭,还有可以根据后端返回的状态码,做一些检验token是否有效或者过期的操作。

//get方式
export function get(url, params={},config=null) {
    config = config||{};
    //https://www.jianshu.com/p/998e248daf3b
    config = Object.assign({params:params,data:true,method:"get"},config);
    return new Promise((resolve, reject) => {
        axios.get(url, config).then(function (res) {
            if (res.data.status == "success") {
                resolve(res.data);
            } else {
                reject(res.data);
            }
        }).catch(function (err) {
            reject(err.data);
        })
    });
}
//post方式
export function post(url, data = {}, method = 'post',config=null) {
    config = config||{};
    data=trimStr(data);
    config = Object.assign({url:url,method:method,data:{ Head: {}, Data: typeof data == "object" ? JSON.stringify(data) : data }},config);
    return new Promise((resolve, reject) => {
        axios(config).then(function (res) {
            if(res.data.status=="success"){
                resolve(res.data.data);
            }else{
                reject(res.data);
            }
        }).catch(function (err) {
            reject(err.data);
        })
    });
}
posted @   文磊啊~  阅读(35)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 【.NET】调用本地 Deepseek 模型
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示