axios简单使用

1. axios 的基本使用

axios 是一个专注于网络请求的库!

axios 基本语法如下:

axios({
    method: '请求方式',
    url: '请求地址',
}).then((result) => {
    // result 是请求成功之后的结果
    console.log(result)
})
  • 调用 axios 方法得到的返回值是 Promise 对象

  • axios 在请求数据收到之后,套了一层壳

{
    config: {},
    data: {真实的数据},
    headers: {},
    request: {},
    status: xxx,
    statusText: ''
}

2. get 请求传递参数 params

axios({
    method: 'get',
    url: 'http://www.liulongbin.top:3006/api/getbooks',
    // URL 中的查询参数
    params: {
        id: 1
    }
}).then((result) => {
    console.log(result)
})

3. post 请求 传递请求体 data

axios({
    method: 'post',
    url: 'http://www.liulongbin.top:3006/api/post',
    // 请求参数体
    data: {
        name: 'zs',
        age: 12
    }
}).then((result) => {
    // result 是请求成功之后的结果
    console.log(result)
})

4. 使用 async await 调用 axios

  • 如果调用某个方法的返回值是 Promise 实例,则前面可以加 await
  • await 只能用在被 async 修饰的方法中
async function  A(){
    const result = await axios({
        method: 'post',
        url: 'http://www.liulongbin.top:3006/api/post',
        // 请求参数体
        data: {
            name: 'zs',
            age: 12
        }
    })
    console.log(result)
}
A()

5. 使用结构赋值

  • 将 服务器 返回的数据 data 解构出来
const { data } = await axios(...)
  • 将解构出来的数据 data 重命名res
const { data: res  } = await axios(...)

6. axios.get 和 axios.post

6.1 axios.get

  • 基本用法
axios.get('url 地址' , {
    // GET 参数
    params: {
		// ...
    }
})
  • 示例
<body>
    <button id="btnGet">btn</button>

    <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
    <script>
        document.getElementById('btnGet').onclick = async function(){
            const { data: res} = await axios.get('http://www.liulongbin.top:3006/api/getbooks' , {
                // GET 参数
                params: {
                    id: 1
                }
            })
            console.log(res)
        }
    </script>
</body>

6.2 axios.post

  • 基本用法:

    axios.post('url 地址' , {数据})
    
  • 示例

    <body>
        <button id="btn">btn</button>
    
        <script src="https://unpkg.com/axios/dist/axios.min.js"></script>
        <script>
            document.getElementById('btn').onclick = async function(){
                const { data: res} = await axios.post('http://www.liulongbin.top:3006/api/post' , {
                    name: 'zs',
                    age: '20'
                })
                console.log(res)
            }
        </script>
    </body>
    
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值