当前位置: 首页 > news >正文

HCIA—— 31 HTTP的报文、请求响应报文、方法、URI和URL

学习目标:

  •  HTTP的报文、请求响应报文、方法、URI和URL

学习内容:

  1. HTTP报文——请求报文和响应报文;HTTP报文结构
  2. HTTP的---请求报文首部和响应报文首部
  3. 方法
  4. URI和URL

目录


 1.HTTP报文

1)HTTP的报文——请求报文和响应报文

  • HTTP协议的请求和响应报文中必定包含HTTP首部。首部内容为客户端和服务器分别处理请求和响应提供所需要的信息。对于客户端用户来说,这些信息中的大部分内容都无须亲自查看。
  • 报文首部由几个字段构成。

HTTP报文结构
报文首部——
服务器端或客户端需处理的请求或响应的内容及属性
空行(CR+LF)

报文主体——数据
 
HTTP的相关

必定是一端担任客户端角色,另一端担任服务器端角色。

客户端和服务器只是标记,可以交换

请求必定由客户端发出,而服务器端回复响应

HTTP报文——必有报文首部,不一定有报文主体

首部内容为客户端和服务器分别处理请求和响应提供所需要的信息
报文首部由字段构成

 2)HTTP的请求报文首部和响应报文首部

HTTP请求报文的格式主要由三部分组成:请求行、请求头部和请求体。

  1. 请求行:包含HTTP方法、请求的URI和HTTP协议的版本。例如,GET /index.html HTTP/1.1。
  2. 请求头部:包含一些键值对,用冒号分隔。这些键值对提供了关于请求的附加信息,例如User-Agent、Accept、Host等。例如,User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36。
  3. 请求体:包含发送给服务器的数据。例如,在POST请求中,请求体可能包含表单数据或JSON数据。

以下是一个更详细的例子:

GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9

在这个例子中,用户通过GET方法请求www.example.com的index.html页面。使用的User-Agent表明这是一个来自Windows 10、64位架构的浏览器中Chrome 58版本。用户接受的媒体类型有HTML、XHTML+XML、XML、WebP图像和APNG,以及所有其他类型的媒体。 最后,Accept-EncodingAccept-Language分别表示客户端支持的内容编码和语言。在这个例子中,客户端支持gzip、deflate和br压缩,以及英语(美国)和英语(世界)。

 除此之外,如果不是访问特定资源而是对服务器本身发起请求,可以用一个*来代替请求URI。下面这个例子是查询HTTP服务器端支持的 HTTP 方法种类。

OPTIONS * HTTP/1.1

首部字段——请求/响应首部字段、通用字段、实体字段

请求报文

请求行——方法、URI、协议版本
请求首部字段——在首部字段 Host中写明网络域名或IP地址
通用首部字段
实体首部字段
其他——cookie等等
空行(CR+LF)
报文主体——数据——可以没有

响应报文
响应行——状态码的原因短语、协议版本、状态码
请求首部字段——
通用首部字段
实体首部字段
其他——cookie等等
空行(CR+LF)
报文主体——数据——可以没有

3)方法

方法
GET——获取资源,
POST
PUT
HEAD
DELETE
OPTIONS
TRACE
CONNECT
LINK
UNLINE

4)URI和URL

END…………


学习时间:

上课时


学习产出:

  • 技术笔记 1遍
  • 有错误请指出,作者会及时改正

相关文章:

  • 【数据标准】数据标准化框架体系-基础类数据标准
  • 基于Real-Sim-Real循环框架的机器人策略迁移方法
  • react拖拽库dnd-kit
  • 【jQuery】插件
  • 【C++初阶】----模板初阶
  • Flask登录页面后点击按钮在远程CentOS上自动执行一条命令
  • 极速版:栈的内存/局部变量表/堆的内存细分
  • 从 select 到 epoll:拆解 I/O 多路复用的演进与实战
  • Teleport场景及原理
  • Python给对象数组排序
  • J2EE框架技术第七章 反射机制与设计模式
  • 什么是大数据
  • J2EE框架技术 第十章 事务管理技术的应用
  • C语言常用的字符串函数
  • CS(载波监听)机制
  • 【考研】计算机网络
  • “屏幕“的实现_程序中如何将数据映射到硬件_C++实战
  • Linux的shell的前置任务
  • Java网络编程演进:从NIO到Netty的UDP实践全解析
  • Java HMAC加密/解密详解
  • 网站开发网站制作报价单/百度模拟点击软件判刑了
  • 护士做二类学分网站/成都营销推广公司
  • 手把手教你搭建自己的网站/上海公关公司
  • 哪个软件可以做明星视频网站/如何制作一个公司网站
  • 酒店房产网站建设/刚刚刚刚刚刚好痛
  • 邢台企业网站建设价格/他达拉非片和伟哥区别