码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • [JavaScript][AJAX] 前后端交互流程,ajax工作流程


    目录

    前后端交互流程

    1.了解服务器 : 提供服务器的机器(计算机)

    2.前端 访问服务器的几种方式

    3.ajax技术 : 页面不跳转的情况下,向服务器请求数据

    4.前后端交互三个流程

    ajax工作流程

    1. ajax作用 : 网页局部刷新

    2.ajax工作流程:

    业务思路

    1. 通过交互来发送ajax

    2.将表单数据发送给服务器

    3.ajax经验

    (1)服务器响应图片路径, 可能有的是有  基地址, 有的没有

    (2)image标签的src可以有两种方式展示图片

    总结

    1.【一般】ajax工作流程

    2.get与post区别


    前后端交互流程

    1.了解服务器 : 提供服务器的机器(计算机)

    🏆服务器种类

    音乐服务器:网抑云,qq音乐
    视频服务器:爱奇艺、哔哩哔哩
    文件服务器:百度网盘、阿里云盘
    邮件服务器:qq邮箱,263邮箱
    web服务器:谷歌浏览器,phpstudy

    总结:服务器就是电脑,只需要安装对应的软件电脑就可以成为服务器

    2.前端 访问服务器的几种方式

     💎网页会跳转:

    (1)地址栏输入网址url
    (2)html的a标签href属性
        不需要条件的跳转
    (3)js的location.href = url
        需要条件(登录:只有账号密码正确的,才会跳转首页)

    💎网页不会跳转
    (4)ajax技术

    3.ajax技术 : 页面不跳转的情况下,向服务器请求数据

    4.前后端交互三个流程

    (1)发送请求  : 前端
    (2)处理请求 : 后端
    (3) 响应请求 : 后端

    前后端交互三个流程

    ajax工作流程

    1. ajax作用 : 网页局部刷新

    2.ajax工作流程:

       (1)创建xhr对象
        (2)设置方法 + 地址
        (3)发送请求
        (4)注册响应事件

    代码如下:

    1. //(1).实例化ajax对象
    2. let xhr = new XMLHttpRequest()
    3. //(2).设置请求方法和地址
    4. //get请求的数据直接添加在url的后面 格式是 url?key=value
    5. xhr.open('get', '接口url')
    6. //(3).发送请求
    7. xhr.send()
    8. //(4).注册回调函数
    9. xhr.onload = function() {
    10. console.log(xhr.responseText)
    11. }

    业务思路

    1. 通过交互来发送ajax

    (1)给元素注册事件
    (2)发送ajax
    (3)渲染服务器响应的数据
        元素.innerHTML = 数组.map( item=>``html字符串`).join('')

    2.将表单数据发送给服务器

    (1)注册提交事件
    (2)获取表单数据
    (3)把表单数据ajax发给服务器
    (4)渲染服务器响应数据

    3.ajax经验

    (1)服务器响应图片路径, 可能有的是有  基地址, 有的没有

    有基地址直接使用:  http://www.xxxxx.com/图片路径
    没有基地址需要手动拼接地址栏:  'http://www.xxxx.com'   +  图片路径

    (2)image标签的src可以有两种方式展示图片

    1.图片路径   
    2.图片数据(小图片):  base64格式二进制数据
        类似于精灵图,减少图片发送请求的次数,从而提高网络性能

    总结

    1.【一般】ajax工作流程

        (1)创建xhr对象
        (2)设置方法 + 地址
        (3)发送请求
        (4)注册响应事件

    1. //(1).实例化ajax对象
    2. let xhr = new XMLHttpRequest()
    3. //(2).设置请求方法和地址
    4. //get请求的数据直接添加在url的后面 格式是 url?key=value
    5. xhr.open('get', '接口url')
    6. //(3).发送请求
    7. xhr.send()
    8. //(4).注册回调函数
    9. xhr.onload = function() {
    10. console.log(xhr.responseText)
    11. }


    2.get与post区别

    💎 传参方式不同

            get与post区别:传参方式不同

            get(url拼接):url?key=value

            post(请求体):xhr.send('key=value')

    get:

    1. //(1).实例化ajax对象
    2. let xhr = new XMLHttpRequest()
    3. //(2).设置请求方法和地址
    4. //get请求的数据直接添加在url的后面 格式是 url?key=value
    5. xhr.open('get', '接口url')
    6. //(3).发送请求
    7. xhr.send()
    8. //(4).注册回调函数
    9. xhr.onload = function() {
    10. console.log(xhr.responseText)
    11. }

    post

    1. //(1).实例化ajax对象
    2. let xhr = new XMLHttpRequest()
    3. //(2).设置请求方法和地址
    4. xhr.open('post', '')
    5. //(3).设置请求头(post请求才需要设置)
    6. xhr.setRequestHeader('Content-type','application/x-www-form-urlencoded')
    7. //(4).发送请求 : 参数格式 'key=value'
    8. xhr.send('key=value')
    9. //(5).注册回调函数
    10. xhr.onload = function () {
    11. console.log(xhr.responseText)
    12. }

  • 相关阅读:
    ESP32 Arduino引脚分配参考:您应该使用哪些 GPIO 引脚?
    学习笔记(1)
    Android WebSocket长连接的实现
    Java jdbc连接Oracle时出现ORA-28040: No matching authentication protocol报错
    二叉树递归套路总结
    AIGC介绍
    三十四、Java Iterator(迭代器)
    微信小程序第三篇:获取页面节点信息
    智能合约编写高级篇(二)区块哈希介绍
    【VUE项目实战】56、商品添加功能(六)-提交添加的商品
  • 原文地址:https://blog.csdn.net/wusandaofwy/article/details/126511105
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号