axios:基本使用、常用配置项、create方法、请求和响应拦截器、取消请求

本文详细介绍了axios的使用,包括发送ajax请求、配置通用属性、使用create方法、请求和响应拦截器以及取消请求。对于axios的get、post请求进行了简化示例,并展示了如何设置超时时间和请求头。同时,讲解了如何通过create方法定制axios实例以适应不同的接口配置。还讨论了请求拦截器和响应拦截器的应用,以及如何在拦截器中处理错误。最后提到了axios的取消请求功能和源码解析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

官网:https://github.com/axios/axios

一、发送ajax请求

练习阶段采用链接引入方式:https://www.bootcdn.cn/axios/

1、axios调用的返回值是一个Promise对象,其成功的结果值就是响应值
2、成功的形参叫response,失败的形参叫error
3、axios发送请求成功的值是一个封装好的响应对象:

在这里插入图片描述
我们想要的响应数据其实藏在response.data中。
4、携带query参数时,配置项名字叫params
5、携带params参数没有配置项,只能拼接在url中(所以axios好像更推荐带query)

1.axios函数发送通用请求

注意这里params传的是query参数,只是名字叫params

    ajax.onclick = function() {
   
   
    // 通用请求
    axios({
   
   
        //请求方法
        method: 'POST',
        //url
        url: 'https://ku.qingnian8.com/dataApi/news/navlist.php',
        //url参数,传的是query类型参数,只是名字叫params
        params: {
   
   a:1,b:2},
        //请求头信息(一般用来携带token)
        headers: {
   
   token: 'xcv6s8g6875f7sa6f87a6s76'},
        //请求体参数(json编码)
        data: {
   
   username: 'zzy',password: '123'},
		//data: `username=zzy&password=123`, //请求体参数(urlencoded编码)
        //超时时间2秒
        timeout:2000
    }).then((response) =>{
   
   
        console.log('全部响应结果:',response);
        console.log('响应状态码:', response.status);
        console.log('响应状态字符串:',response.statusText);
        console.log('响应头信息:', response.headers);
        console.log('响应体:', response.data);
    })
}

2.精简版GET请求

写法和DELETE请求(删除)类似,都不用携带请求体参数

get.onclick = function() {
   
   
    //GET请求
    axios.get('https://ku.qingnian8.com/dataApi/news/navlist.php',{
   
   
        //url参数(query参数)
        params: {
   
   a:1
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值