Ajax入门程序

前端和后台本来是没有联系的,前端想要从后台获取数据,就必须涉及到两个程序的交互,而Ajax就是用于完成两端交互的技术。

Ajax:Asynchronous JavaScript And XML:异步的JavaScript和XML。

异步交互:可以在不重新加载整个页面的情况下,和服务器进行交换数据并更新部分网页,比如:搜索联想、用户名校验。

Ajax的主要作用:

1.和服务器进行数据交互

前端资源虽然被浏览器解析了,但是缺少数据;可以通过Ajax技术,像后台服务器发起请求,后台服务器收到前端请求。

从数据库中按要求获取数据响应给前端,前端得到数据,再渲染展示。

2.异步交互

可以在不重新加载整个页面的情况下,和服务器交换数据,并更新部分网页。

同步和异步:

同步请求:服务器接收,服务器处理请求,需要时间------此时客户端必须等待服务器响应的时间,等到服务端响应之后,客户端才能继续处理。

异步请求:其他和同步请求类似,但是只是在等待服务端响应的时候,客户端可以进行其他操作,无需等待。

html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Ajax入门</title>
</head>
<body>

    
</body>
<script>
    // 前端和后台本来是没有联系的,前端想要从后台获取数据,就必须涉及到两个程序的交互,而Ajax就是用于完成两端交互的技术
    // Ajax:Asynchronous JavaScript And XML:异步的JavaScript和XML
    // 异步交互:可以在不重新加载整个页面的情况下,和服务器进行交换数据并更新部分网页,比如:搜索联想、用户名校验
    
    // Ajax的主要作用:
    // 1.和服务器进行数据交互
    //     前端资源虽然被浏览器解析了,但是缺少数据;可以通过Ajax技术,像后台服务器发起请求,后台服务器收到前端请求
    //     从数据库中按要求获取数据响应给前端,前端得到数据,再渲染展示
    // 2.异步交互
    //     可以在不重新加载整个页面的情况下,和服务器交换数据,并更新部分网页
    // 同步和异步:
    //     同步请求:服务器接收,服务器处理请求,需要时间------此时客户端必须等待服务器响应的时间,等到服务端响应之后,客户端才能继续处理
    //     异步请求:其他和同步请求类似,但是只是在等待服务端响应的时候,客户端可以进行其他操作,无需等待
        
</script>
</html>
html 复制代码
<!DOCTYPE html>
<html lang="zh-CN">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Axios</title>
</head>

<body>
    <button id="getData" type="button">GET</button>
    <button id="postData" type="button">POST</button>
</body>

<script src="js/axios.js"></script>
<script>
    // 使用原生的Ajax请求还是比较繁琐,所以说一般使用Axios,Axios是对于Ajax的封装,主要是为了简化书写

    // Axios使用比较简单,主要分为两步
    // 1.在script标签的src中引入Axios文件
        // 特别注意,这里是需要一对单独的script标签进行引入,而不是在引入的script标签中写代码
    // 2.编写Axios代码,并绑定按钮

    // Get请求:
    //GET请求
    // document.querySelector('#getData').onclick = function() {
    //   axios({
    //     url:'https://mock.apifox.cn/m1/3083103-0-default/emps/list',
    //     method:'get'
    //   }).then(function(res) {
    //     console.log(res.data);
    //   }).catch(function(err) {
    //     console.log(err);
    //   })
    // }

    // //POST请求
    // document.querySelector('#postData').onclick = function() {
    //   axios({
    //     url:'https://mock.apifox.cn/m1/3083103-0-default/emps/update',
    //     method:'post'
    //   }).then(function(res) {
    //     console.log(res.data);
    //   }).catch(function(err) {
    //     console.log(err);
    //   })
    // }

    // Axios还针对了不同请求,提供了不同的api
    // axios.请求方式(url, data, config) (data是post请求需要携带的数据,config是配置信息)
    // 可以简化代码
    document.querySelector("#getData").addEventListener('click', function () {
        axios.get("https://mock.apifox.cn/m1/3083103-0-default/emps/list").then(result => {
            console.log(result.data)
        }).catch(error => {
            console.log(error)
        });
    })
</script>

</html>
相关推荐
黄毛火烧雪下7 小时前
React Native (RN)项目在web、Android和IOS上运行
android·前端·react native
fruge7 小时前
前端正则表达式实战合集:表单验证与字符串处理高频场景
前端·正则表达式
baozj7 小时前
🚀 手动改 500 个文件?不存在的!我用 AST 撸了个 Vue 国际化神器
前端·javascript·vue.js
用户4099322502128 小时前
为什么Vue 3的计算属性能解决模板臃肿、性能优化和双向同步三大痛点?
前端·ai编程·trae
海云前端18 小时前
Vue首屏加速秘籍 组件按需加载真能省一半时间
前端
蛋仔聊测试8 小时前
Playwright 中route 方法模拟测试数据(Mocking)详解
前端·python·测试
零号机8 小时前
使用TRAE 30分钟极速开发一款划词中英互译浏览器插件
前端·人工智能
molly cheung8 小时前
FetchAPI 请求流式数据 基本用法
javascript·fetch·请求取消·流式·流式数据·流式请求取消
疯狂踩坑人8 小时前
结合400行mini-react代码,图文解说React原理
前端·react.js·面试
Mintopia8 小时前
🚀 共绩算力:3分钟拥有自己的文生图AI服务-容器化部署 StableDiffusion1.5-WebUI 应用
前端·人工智能·aigc