axios高级应用示例

整体思路:

  • //1.全局默认配置

  • //2.请求/响应拦截

  • //3.请求封装

  • //4.发送请求-处理数据
    请求封装函数

代码详情:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <script src="../axios.min.js"></script>
    <script src="../jquery-3.5.0.min.js"></script>
    <script>
        //1.全局默认配置
        axios.defaults.baseURL = 'http://182.92.83.218:7788';
        axios.defaults.headers.common['Authorization'] = sessionStorage.getItem('token');
        axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';
        //2.拦截响应
        axios.interceptors.response.use(function (response) {
            // 对响应数据做点什么
            if(response.data.status==200){
                return response.data
            }else{
                alert(response.data.message)
                return Promise.reject(response.data)
            }
            
        }, function (error) {
            // 对响应错误做点什么
            return Promise.reject(error);
        });
        //3.请求封装
        var request={
            get:function(url,params){
                return axios.get(url,params)
            },
            post:function(url,data){
                return axios.post(url,$.param(data))
            },
            postJSON:function(url,data){
                return axios.post(url,data,{
                    'Content-Type':'application/json'
                })
            }

        }
        //4.发送请求-处理数据
        var user={
            password:123321,
            username:'admin1'
        }
        //登录,获取token
        request.postJSON('/user/login',user).then(response=>{
            console.log('获取token',response)
            sessionStorage.setItem('token',response.data.token)
        })
        //get 无参 查询所有栏目信息
        request.get('/category/findAll').then(response=>{
            console.log('get无参',response)
        })
        //get 有参 分页查询用户信息
        request.get('/baseUser/pageQuery',{
            params:{
                page:1,
                pageSize:10
            }
        }).then(response=>{
            console.log('get有参',response)
        })
        //post 发送查询字符串
        var category={
            id:120,
            name:'邻居家的小妹妹',
            description:'有点beautiful'
        }
        request.post('/category/saveOrUpdate',category).then(response=>{
            console.log('post发送查询字符串',response);
        })
    </script>
</head>
<body>
    
</body>
</html>
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值