【网络】HTTP协议

目录

概述

URL

结构

urlencode(URL编码)

urldecode(URL解码)

工具网址

HTTP请求

请求行

请求头

请求体

HTTP响应

状态行

响应头

响应体


个人主页:东洛的克莱斯韦克-CSDN博客

概述

HTTP协议是应用层协议,它定义了客户端(如浏览器)与服务器之间如何通信,以交换或传输

超文本。应用层协议可以自定义,但HTTP协议的方案成熟,应用广泛。
HTTP 协议是一个无连接、无状态的协议,即每次请求都需要建立新的连接,且服务器不会保存客户端的状态信息。

URL

结构

平时说的网址就是URL,主机IP加端口号可以标识全网内唯一的进程,再加路径可以标识全网内的唯一一个资源(文本,图片,视频等)

URL结构
协议://主机名[:端口号]/路径[?查询参数][#片段标识符]

协议:指定了如何访问资源,最常见的协议是http(超文本传输协议)和https(安全的超文本传输协议,即HTTP over SSL/TLS)。
主机名:通常是域名或IP地址,指明了资源所在的服务器。
端口号:指定了服务器上的特定端口,用于接收来自客户端的请求。HTTP的默认端口是80,HTTPS的默认端口是443。如果省略端口号,则使用默认端口。
路径:指明了服务器上资源的具体位置。路径可以包含多级目录,通常使用“/”分隔。
查询参数:可选部分,用于向服务器传递额外的信息,以“?”开始,后跟一个或多个参数,参数之间用“&”分隔。每个参数由键和值组成,通过“=”连接。
片段标识符:可选部分,用于指向资源的特定部分(如页面中的某个章节或元素),以“#”开始。这部分不会发送到服务器,而是由浏览器解析并处理。

urlencode(URL编码)

URL编码是一种将字符转换为可以通过URL安全传输的格式的方法。由于URL的某些部分(如路径、查询字符串)对字符有着严格的限制,比如空格、特殊符号(如#%&+等)在URL中有特定的含义或不被允许,因此需要对这些字符进行编码。

URL编码的过程通常是将需要编码的字符替换为%后跟两位十六进制数的形式。例如,空格字符( )被编码为%20,加号(+)被编码为%2B,斜杠(/)在某些上下文中也需要编码为%2F(尽管在URL的路径部分中它通常不被编码)。

urldecode(URL解码)

与URL编码相反,URL解码是将经过URL编码的字符串转换回原始字符的过程。解码器会查找所有%后跟两位十六进制数的序列,并将它们转换回对应的字符。

URL解码同样广泛应用于Web开发中,尤其是在处理用户输入、查询字符串解析以及Web表单数据提交等场景中。解码确保了服务器能够准确地解析和处理客户端发送的数据。

工具网址

UrlEncode编码/UrlDecode解码

HTTP请求


请求行


格式:请求方法 资源路径 HTTP版本号<CRLF>
请求方法:包括GET、POST、HEAD、OPTIONS、DELETE、TRACE、PUT等。其中,GET和POST是最常用的两种方法。GET方法用于请求服务器发送资源,POST方法用于提交表单数据。
资源路径:请求的资源在服务器上的位置。
HTTP版本号:指示使用的HTTP协议版本,如HTTP/1.1。


请求头


请求头包含了客户端发送给服务器的附加信息,如客户端类型(User-Agent)、请求的资源类型(Accept)、内容编码方式(Accept-Encoding)等。
常见的请求头包括:
Accept: 浏览器可接受的MIME类型。
Accept-Language: 浏览器所希望的语言种类。
Host: 初始URL中的主机和端口。
Referer: 包含一个URL,用户从该URL代表的页面出发访问当前请求的页面。
Content-Length: 表示请求消息正文的长度(对于POST请求)。
Connection: 表示是否需要持久连接,如Keep-Alive。
Cookie: 保存在客户端的文本文件,用于在请求中发送给服务器,以维持会话状态。


请求体


对于POST请求,请求体中包含了要发送给服务器的数据。数据通常以表单数据或JSON等格式编码。


HTTP响应


 

状态行


格式:HTTP版本号 状态码 原因叙述<CRLF>
状态码:一个三位的十进制数,用于表示服务器对请求的处理结果和状态。状态码分为五类,分别以1、2、3、4、5开头,表示不同的含义。
常见的状态码包括:
200 OK:表示请求成功,服务器已返回请求的网页。
404 Not Found:请求的资源不存在。
500 Internal Server Error:服务器内部错误,无法完成请求。


响应头


响应头包含了服务器发送给客户端的附加信息,如资源的内容类型(Content-Type)、内容长度(Content-Length)、内容编码方式(Content-Encoding)等。
常见的响应头包括:
Content-Type: 表示返回的内容类型,如text/html。
Content-Length: 表示返回内容的长度(字节数)。
Content-Encoding: 表示返回内容的编码方式,如gzip。
Server: 服务器软件的名称和版本号。
Set-Cookie: 服务器发送给客户端的cookie信息,用于维持会话状态。


响应体


响应体包含了服务器返回给客户端的实际数据,如HTML页面、图片等。


【linux】信号的理论概述和实操-CSDN博客

【linux】进程间通信(IPC)——匿名管道,命名管道与System V内核方案的共享内存,以及消息队列和信号量的原理概述-CSDN博客

【Linux】用5万字满足你对线程的所有♥幻想♥——【线程概念】【线程安全】【多线程并发】【互斥量】【条件变量】【信号量】【锁的原理】【各种锁】【生产者消费者模型】【读者写者问题】-CSDN博客

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

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

相关文章

TCP 三次握手建立连接

一开始&#xff0c;客户端和服务端都处于 CLOSE 状态。先是服务端主动监听某个端口&#xff0c;处于 LISTEN 状态 1. 第一次握手 客户端会随机初始化序号&#xff08;client_isn&#xff09;&#xff0c;将此序号置于 TCP 首部的「序号」字段中&#xff0c;同时把 SYN 标志位置…

略读ArrayList源码

ArrayList是Java集合框架中的一部分&#xff0c;底层是通过数组实现的&#xff0c;可以动态增长和缩减。 一、首先看成员变量 序列化ID定义。在Java中&#xff0c;如果一个类实现了Serializable接口&#xff0c;那么它的serialVersionUID就非常重要了。serialVersionUID用于确…

python 图片爬虫记录

感谢大家的点赞。再补充一点。 对于这个 url https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEjEqB5nighYsMZE7kexaVNJfxy3OkRutNEKatksw9u5f-ckHNROLzFyx2Uty3zYWNEaeOmzsljGr3eARiDWaM9DM8G2hPuPf8uZP0NO3kNUCnM2Cjb3ZKtLhJDBwqeR4ElpJ7ID5_wIHGQ/s200 这个url最…

Python进阶 JSON数据,pyecharts制图

目录 json数据格式的转换 什么是json json本质 注意 pyecharts快速入门 画一个最简单的折线图 使用全局配置选项优化折线图 总结 json数据格式的转换 什么是json 一种轻量级的数据交换格式&#xff0c;可以按json指定的格式去组织和封装数据 json本质 带有特定格式的…

汇川技术|Inoproshop基本使用方法:汇川指令库、库文件

哈喽&#xff0c;你好啊&#xff0c;我是雷工&#xff01; 本节熟悉了解汇川常用指令库的分类及概述&#xff0c;了解Inoproshop库文件&#xff1b; 以下为学习笔记。 01 指令简介与分类 可编程控制系统中&#xff0c;使CPU完成某种操作或实现某种功能的命令及多个命令的组合…

CCRC-DSA数据安全评估师:加快构建大网络安全工作格局

7月31日&#xff0c;第十二届ISC.AI互联网安全大会开幕式在北京国家会议中心隆重举行&#xff0c;本次大会以“构建大型安全防护模型&#xff0c;引领安全产业创新”为主题。 中央网络安全和信息化委员会办公室副主任、国家互联网信息办公室副主任王京涛出席并发表了重要讲话。…

语音平台调研

百度DuerOS开放平台 DuerOS是百度推出的对话式人工智能操作系统&#xff0c;即智能语音交互平台。DuerOS的技术架构包含“对话服务”和“技能框架”两大基础协议。两大协议连通起来的对话核心系统、智能设备开放平台和技能开放平台&#xff0c;构成了完整DuerOS的智能生态系统。…

C#初级——字典Dictionary

字典 字典是C#中的一种集合&#xff0c;它存储键值对&#xff0c;并且每个键与一个值相关联。 创建字典 Dictionary<键的类型, 值的类型> 字典名字 new Dictionary<键的类型, 值的类型>(); Dictionary<int, string> dicStudent new Dictionary<int, str…

Javascript常见算法(二)【学习】

动态规划 斐波那契数列&#xff1a; 经典的动态规划问题&#xff0c;每个数是前两个数的和。 斐波那契数列&#xff08;Fibonacci sequence&#xff09;是一个非常著名的数列&#xff0c;其中每个数是前两个数的和&#xff0c;序列以0和1开始。在JavaScript中&#xff0c;有多…

药厂子母钟系统,强抗干扰能力,满足复杂生产环境

在制药行业中&#xff0c;精确的时间同步对于确保药品生产的质量和合规性至关重要。药厂子母钟系统作为一种高度可靠的时间同步解决方案&#xff0c;不仅能够提供准确的时间信息&#xff0c;还具有强大的抗干扰能力&#xff0c;非常适合在复杂的生产环境中使用。本文将详细介绍…

[STM32]HAL库实现自己的BootLoader-BootLoader与OTA-STM32CUBEMX

目录 一、前言 二、BootLoader 三、BootLoader的实现 四、APP程序 五、效果展示 六、拓展 一、前言 听到BootLoader大家一定很熟悉&#xff0c;在很多常见的系统中都会存在BootLoader。本文将介绍BootLoader的含义和简易实现&#xff0c;建议大家学习前掌握些原理基础。 …

YOLOV8替换Lion优化器

YOLOV8替换Lion优化器 1 优化器介绍博客 参考bilibili讲解视频 论文地址&#xff1a;https://arxiv.org/abs/2302.06675 代码地址&#xff1a;https://github.com/google/automl/blob/master/lion/lion_pytorch.py """PyTorch implementation of the Lion …

C++初学(11)

不知不觉就第11篇了QWQ 11.1、指针和自由存储空间 之前提到了计算机程序在存储数据时必须跟踪的3个基本属性&#xff1a; &#xff08;1&#xff09;信息存储在何处&#xff1b; &#xff08;2&#xff09;存储的值为多少&#xff1b; &#xff08;3&#xff09;存储的信息…

未授权访问漏洞(非重点 中)

6.Hadoop 1.在 fofa 使用 port"8088" && app"Hadoop" 获取资源 2.打开后若无需登录,则存在漏洞 7.ActiveMQ 1.在 fofa 使用 body"ActiveMQ" && port"8161" 获取资源 2.打开后若点击登录,默认账户密码为 admin/adm…

【css】使用CSS绘制奥运五环--巴黎奥运

使用CSS绘制奥运五环 在2024年巴黎奥运会期间&#xff0c;本文来使用 CSS 来画一个奥运五环。奥运五环由五个相互交叠的圆环组成&#xff0c;分别代表五大洲。 奥运五环是相互连接的&#xff0c;因此在视觉上会产生重叠效果&#xff0c;这也是实现五环最有挑战性的部分 HTML结…

Rabbitmq的死信队列与如何利用死信队列实现延迟队列

如果设置了队列的 TTL 属性&#xff0c;那么一旦消息过期&#xff0c;就会被队列丢弃(如果配置了死信队列被丢到死信队列中)。而如果仅设置消息的 TTL 属性&#xff0c;即使消息过期&#xff0c;也不一定会被马上丢弃&#xff0c;因为消息是否过期是在即将投递到消费者之前判定…

HTML常用标签和CSS的运用

目录 1.HTML标签 1.1 文档结构标签 1.2 文本格式标签 1.3 列表标签 1.4 链接和媒体标签 1.5 表格标签 1.6 表单标签 1.7 分区和布局标签 1.8 元数据标签 2.css样式 2.1 字体样式 2.2 文本样式 2.3 背景样式 2.4 边框样式 2.5 间距样式 2.6 宽度和高度 2.7 显示…

AI算力租赁是什么,哪些行业会有需求?

一、AI算力租赁的定义与概述 AI算力租赁是指基于人工智能&#xff08;AI&#xff09;应用需求&#xff0c;将所需的计算能力&#xff08;即算力&#xff09;通过租赁服务的方式提供给企业和个人用户。这种服务允许用户根据需要租用人工智能计算资源&#xff0c;如图形处理单元…

星座运势网源码/星座屋接口/星座配对网站PHP程序带采集

星座运势网源码/星座屋接口/星座配对网站PHP程序带采集 演示站&#xff1a; https://xz.wengu8.com/ 程序说明&#xff1a; 1、前端模板PC手机端自适应。 2、每日运势/当月/当年星座运势调用星座屋API接口&#xff0c;每天只采集一次接口&#xff0c;后保存到本地调用本地…

科普文:万字梳理高性能 Kafka快的8个原因

概叙 科普文&#xff1a;万字详解Kafka基本原理和应用-CSDN博客 科普文&#xff1a;万字梳理31个Kafka问题-CSDN博客 我们都知道 Kafka 是基于磁盘进行存储的&#xff0c;但 Kafka 官方又称其具有高性能、高吞吐、低延时的特点&#xff0c;其吞吐量动辄几十上百万。 在座的…