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,一经查实,立即删除!

相关文章

好用的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…

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开发的新用户引导库…

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

一、核心技术 传感器技术&#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;子…

已有docker增加端口号,不用重新创建Docker

已有docker增加端口号&#xff0c;不用重新创建Docker 1. 整体描述2. 具体实现2.1 查看容器id2.2 停止docker服务2.3 修改docker配置文件2.4 重启docker服务 3. 总结 1. 整体描述 docker目前使用的非常多&#xff0c;但是每次更新都需要重新创建docker&#xff0c;也不太方便&…

jmeter常用配置元件介绍总结之断言

系列文章目录 1.windows、linux安装jmeter及设置中文显示 2.jmeter常用配置元件介绍总结之安装插件 3.jmeter常用配置元件介绍总结之线程组 4.jmeter常用配置元件介绍总结之函数助手 5.jmeter常用配置元件介绍总结之取样器 6.jmeter常用配置元件介绍总结之jsr223执行pytho…

OpenLayers教程12_WebGL自定义着色器:实现高级渲染效果

在 OpenLayers 中使用 WebGL 自定义着色器实现高级渲染效果 目录 一、引言二、WebGL 自定义着色器的优势三、示例应用&#xff1a;实现动态渲染效果 1. 项目结构2. 主要代码实现3. 运行与效果 四、代码讲解与扩展 1. 动态圆的半径和填充颜色2. 动态透明度与边框效果 五、总结…

Axure二级菜单下拉交互实例

1.使用boxlabe进行基础布局 2.设置鼠标悬浮和选中状态 3.转换为动态面板 选中所有二级菜单,进行按钮组转换 选中所有二级菜单,进行动态面板转换 4.给用户管理增加显示/隐藏事件 1)选择toggle代表上拉和下拉切换加载 2)勾选Bring to Front,并选择Push/Pull Widgets代表收缩时…

SpringSecurity+OAuth2权限管理

Spring Security 零 介绍 功能&#xff1a; 身份认证&#xff08;authentication&#xff09; 授权&#xff08;authorization&#xff09; 防御常见攻击&#xff08;protection against common attacks&#xff09; 身份认证&#xff1a; 身份认证是验证谁正在访问系统资…

为什么芯麦的 GC4931P 可以替代A4931/Allegro 的深度对比介绍

在电机驱动芯片领域&#xff0c;芯麦 GC4931P 和 A4931 都是备受关注的产品。它们在多种应用场景中发挥着关键作用&#xff0c;今天我们就来详细对比一下这两款芯片。 一、性能参数对比 &#xff08;一&#xff09;电流输出能力 A4931 具有一定的电流输出能力&#xff0c;但芯…