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=>{
	// 处理错误
})
相关推荐
IoOozZzzz9 分钟前
ES6-Set-Map对象小记
前端·javascript·es6
浪裡遊13 分钟前
利用flask设计接口
前端·后端·python·flask·web3.py·httpx
松树戈38 分钟前
idea结合CopilotChat进行样式调整实践
前端·javascript·vue.js·copilot
溟洵1 小时前
【C++ Qt】输入类控件(上) LineEdit、QTextEdit
c语言·前端·c++·qt·前端框架
漫无目的行走的月亮2 小时前
VUE实现todolist
前端·vue.js·elementui
njsgcs3 小时前
chili3d调试10 网页元素css node deepwiki 生成圆柱体 生成零件图片
前端·css·3d
Мартин.3 小时前
[Meachines] [Hard] Holiday SQLI+XSS-Bypass+RCE-HEX-Shell+TRP00F+npm特權升級
前端·npm·xss
sasaraku.8 小时前
INP指标
前端
magic 24511 小时前
Spring 命名空间注入:p、c 与 .util 的深度解析
java·前端·spring
钢铁男儿12 小时前
Python基本语法(函数partial)
前端·javascript·python