AJAX学习(24.11.1-24.11.14)(包含HTTP协议)

AJAX学习(24.11.1-11.14)

来源: 传智 | 高校学习平台-首页 传智播课:黑马程序员

1.服务器和客户端

1.服务器:存放和对外提供资源的电脑。

2.客户端(用户):获取和消费资源的电脑。(一般通过浏览器)

2.URL(统一资源定位符)

URL也叫网址,完整的URL包含协议、域名、端口、文件路径、查询参数、锚点。

3.客户端和服务器的通信过程

用Ctrl+Shift+I 打开chrome浏览器的开发者工具,Network-Doc查看

4.请求数据的方式

XMLHttpRequest对象(xhr)

通过 XMLHttpRequest 可以在不刷新页面的情况下请求特定 URL,获取数据。这允许网页在不影响用户操作的情况下,更新页面的局部内容。

用于单页面应用。(SPA)

常用的方式是:get和post

get:向服务器要资源,如获取数据,js文件,css文件等

post:往服务器发送资源,如提交表单信息等。

5.AJAX概念

1.异步的Javascript和XML

2.在网页中利用XMLHttpRequest对象和服务器进行数据交互。

6.接口的概念

使用AJAX进行数据请求时,被请求的URL地址就是数据接口(简称接口),每个接口必须要有请求方式。

7.接口请求过程

post同理。(将获取数据改为提交数据)

8.了解同源策略和跨域

1.同源:两个页面URL的协议、域名、端口号相同。(没有端口号时,端口号默认为80)

9.了解防抖和节流

csdn:什么是防抖和节流?有什么区别?_lua 防抖节流-CSDN博客

防抖(Debounce)和节流(Throttle)是前端性能优化中常用的两种技术,它们主要用于控制某些函数的执行频率,以提高页面的响应速度和性能。

(1)防抖

概念图:

核心代码:

  <button>点我</button>
<script>let btn=document.querySelector('button');let timer=null;btn.onclick=function(){clearTimeout(timer);timer=setTimeout(()=>{console.log('点我');},1000)}
</script>

(2)节流

概念图:

核心代码:

 <button>点我</button><script>let btn=document.querySelector('button');let flag=true;btn.onclick=function(){  if(flag){flag=false;console.log('节流');}setTimeout(()=>{flag=true;},5000)}</script>

10.HTTP协议

mdn的HTTP概述:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Overview

(1)HTTP简介

1.通信

概念:信息的传递和交换;

三要素:         =》主体(服务器和客户端)

                ​        =》内容

                        ​ =》方式

协议:互联网的通信协议是网页内容的传输协议。(网页内容又叫超文本)

HTTP协议:超文本传输协议(HyperText Transfer Protocol)

2.what is http:

3.how

(2)HTTP请求消息

1.概念:客户端发起的请求叫HTTP请求,客户端发送到服务器的消息叫做HTTP请求消息。

(HTTP请求消息又叫HTTP请求报文)

2.组成部分:

=》请求行(start line):

        ​ =》请求方法

​         =》URL

        ​ =》HTTP协议版本

=》请求头部:用于描述客户端的基本信息,把客户端的相关信息告诉服务器。

        ​ =》组成:多行键/值对

          =》例如:

                        ​ =》User-Agent说明当前浏览器类型,操作系统、设备类型等

                        ​ =》Accept描述客户端接受什么类型的返回内容,是一个优先级列表

        ​ 例如,Accept: text/html, application/xhtml+xml, application/xml;q=0.9, */*;q=0.8                 表 示客户端优先接受HTML内容,其次是XML,然后是其他所有类型的内容。

                        ​ =》Content-Type描述发送到服务器的数据格式

常见请求头csdn:

HTTP请求头及其作用_请求头的作用-CSDN博客

mdn详情:

https://developer.mozilla.org/zh-CN/docs/Glossary/Request_header

=》空行:分隔请求头部和请求体

=》请求体:用于发送从客户端到服务器的数据。

        ​ =》注意:按照HTTP规范,GET请求通常不包含请求体(但是官方没有明令禁止),因为GET请求主要用于请求数据,而不是提交数据。GET请求的参数通常通过URL的查询字符串(query string)传递。

        相关文章:get请求能携带请求体吗?_get 请求体-CSDN博客

        ​ =》包含请求体的请求方式:POST(最常见)、PUT、DELETE、PATCH

        ​ =》请求体中的数据类型:由Content-Type请求头指定

(3)HTTP响应消息

1.概念:服务器响应给客户端的消息内容,也叫响应报文。

2.组成部分:

=》状态行:

        =》协议版本,通常为 HTTP/1.1

        =》状态码

        =》状态码的文本描述

=》响应头部:描述服务器的基本信息

        =》组成:多行键/值对

        =》示例:

mdn:https://developer.mozilla.org/zh-CN/docs/Glossary/Response_header

=》空行:分隔响应头部和响应体

=》响应体:服务器响应给客户端的资源内容(在Network面板下的Resposne查看)

(4)HTTP请求方法

mdn参考:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Methods

=》增:POST

=》删:DELETE

=》改:PUT

=》查:GET

(5)HTTP响应状态码

mdn参考:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Status

重定向:指示浏览器或客户端从一个URL(统一资源定位符)跳转到另一个URL

常用状态码:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/886768.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

AI 驱动低代码平台:开创智能化用户体验新纪元

一、引言 人工智能技术如汹涌浪潮般迅猛发展&#xff0c;在各个行业掀起了颠覆性的变革风暴。于软件开发领域而言&#xff0c;AI 辅助编程与低代码平台的完美结合已然成为关键趋势&#xff0c;极大地提高了开发效率。然而&#xff0c;低代码平台的使命绝非仅仅局限于简化开发流…

【Python】深入理解Python中的懒加载:从零实现按需加载提升程序性能

《Python OpenCV从菜鸟到高手》带你进入图像处理与计算机视觉的大门! 懒加载(Lazy Loading)是一种在实际需要时才加载数据或资源的编程技术,广泛应用于提升程序的性能和启动速度。尤其在Python中,懒加载机制可以显著降低初始化时间和内存占用。本文详细介绍如何在Python中…

好用的js组件库

lodash https://www.lodashjs.com/https://www.lodashjs.com/ uuid 用于生成随机数&#xff0c;常用于生成id标识 GitHub - uuidjs/uuid: Generate RFC-compliant UUIDs in JavaScripthttps://github.com/uuidjs/uuid dayjs 常用于时间的处理 安装 | Day.js中文网 (fenxi…

基于麒麟服务器操作系统V10版本,部署Nginx服务、MySql服务搭建PHP环境,实现静态网站平台的搭建。

一、环境准备 关闭防火墙。 查看当前防火墙的状态 systemctl status firewalld Copy 如果防火墙的状态参数是inactive,则防火墙为关闭状态。 如果防火墙的状态参数是active,则防火墙为开启状态。 关闭防火墙。 如果您想临时关闭防火墙,需要运行以下命令: systemctl…

[JavaWeb] 尚硅谷JavaWeb课程笔记

1 Tomcat服务器 Tomcat目录结构 bin&#xff1a;该目录下存放的是二进制可执行文件&#xff0c;如果是安装版&#xff0c;那么这个目录下会有两个exe文件&#xff1a;tomcat10.exe、tomcat10w.exe&#xff0c;前者是在控制台下启动Tomcat&#xff0c;后者是弹出GUI窗口启动To…

Spring Security 中的 UserDetailsService

在本篇博客中&#xff0c;我们将探讨 UserDetailsService 的重要性&#xff0c;以及如何通过实际示例在 Spring Security 中实现它。 理解 UserDetailsService UserDetailsService 是 Spring Security 提供的一个接口&#xff0c;用于在认证过程中获取用户详细信息。DaoAuthe…

SRP 实现 Cook-Torrance BRDF

写的很乱&#xff01; BRDF&#xff08;Bidirectional Reflectance Distribution Function&#xff09;全称双向反射分布函数。辐射量单位非常多&#xff0c;这里为方便直观理解&#xff0c;会用非常不严谨的光照强度来解释说明。 BRDF光照模型&#xff0c;上反射率公式&#…

向量数据库FAISS之五:原理(LSH、PQ、HNSW、IVF)

1.Locality Sensitive Hashing (LSH) 使用 Shingling MinHashing 进行查找 左侧是字典&#xff0c;右侧是 LSH。目的是把足够相似的索引放在同一个桶内。 LSH 有很多的版本&#xff0c;很灵活&#xff0c;这里先介绍第一个版本&#xff0c;也是原始版本 Shingling one-hot …

基于YOLOv8深度学习的无人机航拍小目标检测系统(PyQt5界面+数据集+训练代码)

本研究提出并实现了一种基于YOLOv8深度学习模型的无人机航拍小目标检测系统&#xff0c;旨在解决高空环境下汽车目标检测的技术难题。随着无人机技术的发展&#xff0c;航拍图像已广泛应用于交通监控、城市管理、灾害应急等多个领域。然而&#xff0c;由于无人机通常在较高的飞…

LeetCode 热题 100 回顾

目录 一、哈希部分 1.两数之和 &#xff08;简单&#xff09; 2.字母异位词分组 &#xff08;中等&#xff09; 3.最长连续序列 &#xff08;中等&#xff09; 二、双指针部分 4.移动零 &#xff08;简单&#xff09; 5.盛最多水的容器 &#xff08;中等&#xff09; 6…

使用 PyTorch 实现 ZFNet 进行 MNIST 图像分类

在本篇博客中&#xff0c;我们将通过两个主要部分来演示如何使用 PyTorch 实现 ZFNet&#xff0c;并在 MNIST 数据集上进行训练和测试。ZFNet&#xff08;ZFNet&#xff09;是基于卷积神经网络&#xff08;CNN&#xff09;的图像分类模型&#xff0c;广泛用于图像识别任务。 环…

【计算机网络实验】之静态路由配置

【计算机网络实验】之静态路由配置 实验题目实验目的实验任务实验设备实验环境实验步骤路由器配置设置静态路由测试路由器之间的连通性配置主机PC的IP测试 实验题目 静态路由协议的配置 实验目的 熟悉路由器工作原理和机制&#xff1b;巩固静态路由理论&#xff1b;设计简单…

driver.js实现页面操作指引

概述 在访问某些网站的时候&#xff0c;第一次进去你会发现有个操作指引&#xff0c;本文引用driver.js&#xff0c;教你在你的页面也加入这般高大上的操作指引。 实现效果 实现 driver.js简介 driver.js是一个功能强大且高度可定制的基于原生JavaScript开发的新用户引导库…

《C++ 实现区块链:区块时间戳的存储与验证机制解析》

在区块链这个复杂而精妙的技术架构中&#xff0c;时间戳是一个至关重要的元素&#xff0c;尤其当我们使用 C 来实现区块链时&#xff0c;对区块时间戳的存储和验证机制设计更是不容忽视。这一机制如同区块链的时间脉搏&#xff0c;为整个系统的有序运行和数据可信性提供了坚实的…

Ubuntu24.04普通安装mysql

Ubuntu24.04普通安装mysql 1、初始化mysql时报错 /opt/sudytech/mysql/bin/mysqld --initialize-insecure/opt/sudytech/mysql/bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory解决方法: find …

无人机航测技术算法概述!

一、核心技术 传感器技术&#xff1a; GPS/GLONASS&#xff1a;无人机通过卫星定位系统实现高精度的飞行控制和数据采集。 高清相机&#xff1a;用于拍摄地面图像&#xff0c;通过后续图像处理生成三维模型。 激光雷达&#xff08;LiDAR&#xff09;&#xff1a;通过激光扫…

小鹏汽车大数据面试题及参考答案

抽象类与接口的区别是什么? 抽象类是一种不能被实例化的类,它可以包含抽象方法和非抽象方法。抽象方法是没有具体实现的方法,必须在子类中被实现。抽象类主要用于为一组相关的类提供一个通用的模板,子类可以继承抽象类并实现其中的抽象方法,也可以使用抽象类中的非抽象方法…

Docker 基础命令介绍和常见报错解决

介绍一些 docker 可能用到的基础命令&#xff0c;并解决三个常见报错&#xff1a; 权限被拒绝&#xff08;Permission Denied&#xff09;无法连接到 Docker 仓库&#xff08;Timeout Exceeded&#xff09;磁盘空间不足&#xff08;No Space Left on Device&#xff09; 命令以…

Java RPC框架的接口预热原理及无损实现

&#x1f680; 博主介绍&#xff1a;大家好&#xff0c;我是无休居士&#xff01;一枚任职于一线Top3互联网大厂的Java开发工程师&#xff01; &#x1f680; &#x1f31f; 在这里&#xff0c;你将找到通往Java技术大门的钥匙。作为一个爱敲代码技术人&#xff0c;我不仅热衷…

java的强,软,弱,虚引用介绍以及应用

写在前面 本文看下Java的强&#xff0c;软&#xff0c;弱&#xff0c;虚引用相关内容。 1&#xff1a;各种引用介绍 顶层类是java.lang.ref.Reference,注意是一个抽象类&#xff0c;而不是接口&#xff0c;其中比较重要的引用队列ReferenceQueue就在该类中定义&#xff0c;子…