Ajax入门

文章目录

axios体验

  • 引入axios库

  • 使用axios语法

    java 复制代码
    axios({
    	url: '目标资源地址'
    }).then((result)=>{
    	// 对服务器返回的数据做后续处理
    })

  • 完整实例

    java 复制代码
    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>AJAX概念和axios使用</title>
    </head>
    
    <body>
    <!--
      axios库地址:https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js
      省份数据地址:http://hmajax.itheima.net/api/province
    
      目标: 使用axios库, 获取省份列表数据, 展示到页面上
      1. 引入axios库
    -->
    <p class="my-p"></p>
    <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
    <script>
        // 2. 使用axios函数
        axios({
            url: 'http://hmajax.itheima.net/api/province'
        }).then(result=>{
            console.log(result)
            console.log(result.data.list)
            console.log(result.data.list.join('<br>'))
            // 把准备好省份列表,插入到页面
            document.querySelector('.my-p').innerHTML= result.data.list.join('<br>')
        })
    </script>
    </body>
    </html>
  • 运行结果

axios-查询参数

  • 语法:使用axios提供的params选项

    java 复制代码
    axios({
    	url: '目标资源地址',
    	params:{
    		参数名:值
    	}
    }).then((result)=>{
    	// 对服务器返回的数据做后续处理
    })
  • 注意:axios在运行时把参数名和值,会拼接到url ?参数名=值


  • demo

    java 复制代码
    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta http-equiv="X-UA-Compatible" content="IE=edge">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>AJAX查询参数</title>
    </head>
    
    <body>
    <!--
      axios库地址:https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js
      省份数据地址:http://hmajax.itheima.net/api/city
    
      目标: 使用axios库, 获取省份列表数据, 展示到页面上
      1. 引入axios库
    -->
    <p class="my-p"></p>
    <script src="https://cdn.jsdelivr.net/npm/axios/dist/axios.min.js"></script>
    <script>
        // 2. 使用axios函数
        axios({
            url:'http://hmajax.itheima.net/api/city',
            // 查询参数
            params:{
                pname:'贵州省'
            }
        }).then((result)=>{
            console.log(result.data.list)
            document.querySelector('.my-p').innerHTML=result.data.list.join('<br>')
    
        })
    </script>
    </body>
    </html>
  • 运行结果

常用请求方法

  • 请求方法:对服务器资源,要执行的操作

    请求方法 操作
    GET 获取数据
    POST 提交数据
    PUT 修改数据(全部)
    DELETE 删除数据
    PATCH 修改数据(部分)

数据提交

axios请求配置

  • url:请求的URL地址

  • method:请求的方法,GET可以省略不写(不区分大小写)

  • data:提交的数据

    java 复制代码
    axios({
    	url: '目标资源地址',
    	method:'请求方法',
    	data:{
    		参数名:值
    	}
    }).then((result)=>{
    	// 对服务器返回的数据做后续处理
    })

axios错误处理

语法:在then方法的后面,通过点语法调用catch方法,传入回调函数并定义形参

java 复制代码
axios({
	// 请求选项
}).then(result=>{
	// 处理数据
}).catch(error=>{
	// 处理错误
})
相关推荐
酒尘&1 小时前
JS数组不止Array!索引集合类全面解析
开发语言·前端·javascript·学习·js
学历真的很重要2 小时前
VsCode+Roo Code+Gemini 2.5 Pro+Gemini Balance AI辅助编程环境搭建(理论上通过多个Api Key负载均衡达到无限免费Gemini 2.5 Pro)
前端·人工智能·vscode·后端·语言模型·负载均衡·ai编程
用户47949283569153 小时前
"讲讲原型链" —— 面试官最爱问的 JavaScript 基础
前端·javascript·面试
用户47949283569153 小时前
2025 年 TC39 都在忙什么?Import Bytes、Iterator Chunking 来了
前端·javascript·面试
大怪v4 小时前
【Virtual World 04】我们的目标,无限宇宙!!
前端·javascript·代码规范
狂炫冰美式4 小时前
不谈技术,搞点文化 🧀 —— 从复活一句明代残诗破局产品迭代
前端·人工智能·后端
xw55 小时前
npm几个实用命令
前端·npm
!win !5 小时前
npm几个实用命令
前端·npm
代码狂想家5 小时前
使用openEuler从零构建用户管理系统Web应用平台
前端
dorisrv6 小时前
优雅的React表单状态管理
前端