HTTP协议简介_请求消息/请求数据包/请求报文_响应消息/响应数据包/响应报文

文章目录

  • HTTP 介绍
  • 请求数据包/请求消息/请求报文
    • 请求数据包解析
  • 响应数据包/响应消息/响应报文

HTTP 介绍

概念:Hyper Text Transfer Protocol 超文本传输协议
传输协议:定义了客户端和服务器端通信时发送数据的格式

特点:
1.基于TCP/IP的高级协议
2.默认端口号:80
3.基于请求/响应模型的:一次请求对应一次响应
4.无状态的:每次请求之间相互独立,不能交互数据

历史版本:
1.0:每一次请求响应都会建立新的连接;每一次新的请求都会建立新的连接
1.1:复用连接

请求数据包/请求消息/请求报文

1.第一部分,请求行(数据包中的一行内容)

请求行包括三部分内容:
1.1.请求方式(get/post)
2.1.请求资源路径(端口号之后的内容,比如 /appname/servlet
3.1.协议的类型与版本

2.第二部分,若干消息头(消息头是由 w3c 定义的一些有特殊含义的键值对)
也叫请求头,客户端告诉服务端一些信息

2.1.消息头的样式,比如:content-type= text/html;
2.2.服务器和浏览器都会遵守这些消息头的约定。
2.3.消息头一般由服务器或者浏览器自动生成,但是也可以通过编程的方式生成

常见请求头:
1.User- Agent:浏览器告诉服务器,我访问你使用的浏览器版本信息。可以在服务器端获取该头的信息,解决浏览器的兼容性问题
2.Accept:浏览器告诉服务器,浏览器可以接收的内容格式,即服务器可以返回给浏览器什么格式的内容
3.Accept-Encoding:浏览器告诉服务器,浏览器可以接收的压缩格式
4.Referer:告诉服务器,我(当前请求)从哪里来
作用:
防盗链,判断访问来源,从而屏蔽非法访问
统计工作,统计不同的访问来源

在这里插入图片描述

5.Connection:连接状态

3.第三部分,实体内容
也叫请求体,封装请求消息中的请求参数

3.1.如果请求方式是 post 方式,请求参数及值会放在这儿。
3.2.如果请求方式是 get 方式,请求参数与值包含在请求资源路径里面。

请求数据包解析

在这里插入图片描述

在这里插入图片描述

响应数据包/响应消息/响应报文

1.第一部分:状态行
也叫响应行

HTTP/1.1 200 OK
协议版本 状态码 状态码描述

1.1.协议的类型与版本
1.2.状态码(状态码是一个数字,不同的数字代表不同的含义)
1.3.状态码的描述

2.第二部分:若干消息头

也叫响应头

2.1.格式
响应头名称:值

2.1.1Content-Type:text/html;charset=UTF-8
告诉浏览器返回是html格式的文本内容,使用的编码格式是UTF-8。这样浏览器就会使用html引擎解析文本内容,且使用UTF-8进行解码。

2.1.2.Content-Length:101
文本内容的字节数

2.1.3.Content-disposition
in-line:默认值,告诉客户端在当前页面内打开响应体的内容
attachment:告诉客户端以附件形式打开响应体的内容。常用于文件的下载。

3.第三部分:实体内容

也叫响应体
服务器返回给浏览器的最终数据。例如,html源代码;图片的二进制码等

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

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

相关文章

apache.camel_Apache Camel 2.20发布–新增功能

apache.camelApache Camel 2.20已于今天发布,并且像往常一样,我受命撰写有关此出色新版本及其亮点的博客。 该版本具有以下重点。 1)Java 9技术预览支持 我们已经开始支持Java 9的工作,此版本称为技术预览。 源代码在Java 9上…

操作无法完成(错误 0x000006ba),Windows 11 PDF打印机无法使用解决办法

操作无法完成(错误 0x000006ba),Windows 11 PDF打印机无法使用解决办法 解决方式一 先重启一次电脑,看看是否可以解决问题。 解决方式二 重新启动 Printer Spooler 服务

MyEclipse 的 TCP/IP Monitor 的使用

文章目录步骤 1:新建 web02 工程步骤 2:在 WebRoot 下创建 add_employee.html步骤 3:部署项目步骤 4:启动服务器步骤 5:打开 TCP/IP Monitor步骤 6:增加新的监视器步骤 7:启动监视器步骤 8&…

linux添加windows网络打印机,Linux Mint如何添加windows分享的网络打印机?

1.安装sambasudo apt-get install samba2.找到系统打印机选项通过 Menu-->>控制中心-->>系统管理找到 Printers选项,双击打开。3.核对windows打印机名并添加在如上图的画面中,点击 “Network Printer”,再点击“windows Printer …

5菜鸟教程_excel图文教程:应用PQ工具进行数据整理

编按:哈喽,大家好!在日常工作中,我们经常会与数据打交道,那整理数据自然也是一件习以为常的事。但就是这么一件天天都会做的事,却让很多人压力山大,这不,又有一位小伙伴遇到问题了&a…

MyEclipse 如何将 jar 包导入项目中

步骤 1 项目右键->build path( 构建路径 )->configure build path(配置构建路径) 步骤 2 Java Build Path --> libraries(库) --> Add External JARs --> 选择 ojdbc14_11g.jar 在项目中出现 Referenced Libraries , 则完成

oauth 使用令牌_使用OAuth2令牌的安全REST服务

oauth 使用令牌1.简介 在本教程中,我们将介绍如何将Spring Security与OAuth结合使用以保护REST服务。 在演示应用程序中,可以使用路径模式( / api / ** )访问服务器上受保护的REST资源,以便基于该路径的请求URL映射到不…

java message_Java Message System简介

java messageJava消息系统 在本文中,我将讨论面向消息的中间件 (MOM)以及JMS如何在Enterprise Java中实现它。 此外,我还将讨论适合JMS使用的典型用例以及用于讨论消息传递解决方案的不同术语,例如Publisher / Sender …

IntelliJ IDEA for Mac 如何设置 tab 键为 4 个空格?

使用快捷键 Command , 打开偏好设置窗口如下所示: 设置好以后,可以按 Option Command L 整理格式,然后选中缩进的部分,如果能选中缩进的部分,证明是空格: 如果不想整理格式,还可以用 edit…

安兔兔跑分可信吗_安兔兔安卓手机跑分性能榜公布:第一名实至名归?

3月5日消息,安兔兔官方放出了2019年2月份国内安卓手机的性能跑分排行榜。从榜单中我们可以看到排名前三的分别是:小米9、联想Z5 Pro GT 855版、红魔Mars电竞手机。不出所料,前三名都是高通平台的旗舰Soc,骁龙855和骁龙845。骁龙85…

IntelliJ IDEA for Mac 类和方法注释模板设置

文章目录类注释模板设置使用 File and Code Templates方法 1:直接在编辑区编写模板代码方法 2:使用 parse 指令来引用注释模板使用 Live Templates方法注释模板设置注意事项解决注释模板无法获取参数名和返回值类型的问题类注释模板设置 使用 File and …

机试题型_2020年焊工(技师)新版试题及焊工(技师)试题及答案

题库来源:安全生产模拟考试一点通公众号小程序2020年焊工(技师)新版试题及焊工(技师)试题及答案,包含焊工(技师)新版试题答案和解析及焊工(技师)试题及答案练习。由安全生产模拟考试一点通公众号结合国家焊工(技师)考试最新大纲及焊工(技师)考试真题汇总…

Eclipse 如何修改默认工作空间和切换工作空间(Workspace)

文章目录如何关闭/开启 Eclipse Launcher 弹窗提示通过配置文件设置通过 IDE 的偏好设置如何修改 Eclipse 默认的工作空间和切换工作空间通过配置文件修改通过 Eclipse Launcher 窗口修改通过菜单来切换工作空间如何关闭/开启 Eclipse Launcher 弹窗提示 通过配置文件设置 ec…

hashmap java_Java – HashMap详细说明

hashmap javaHashMap基于哈希算法工作,根据Java文档HashMap具有以下四个构造函数, 建设者 描述 HashMap ​() 构造一个空的 具有默认初始容量(16)和默认加载因子(0.75)的HashMap 。 HashMap ​(int i…

广州电子厂房净化工程_简述设计电子车间净化工程的注意要点

在电子车间净化工程的设计、安装、选择净化设备与彩钢夹芯板的时候有哪些需要注意的要点呢?这些看起来不太重要的细节,却往往大大的影响了电子净化车间的净化效率与洁净度。而且这些注意要点,不仅在电子净化车间中适用,在食品加工厂、制药净…

使用log4j记录日志_使用log4j2免费分配日志记录

使用log4j记录日志介绍 最近,我正在为一个客户端工作,试图为大型精心制作的Java系统消除一些GC暂停。 经过分析后,我意识到大部分垃圾都是通过日志记录产生的! 是否有一种简单的方法来删除所有分配? 原来有:) 我应该使…

Java Web工程结构_项目结构

文章目录Eclipse 的 Java Web 工程目录结构IDE 的目录结构截图本地的工作空间(Workspace)中的目录结构目录说明Eclipse 的 Java 工程目录结构IDE 的目录结构截图本地的工作空间中的工程目录MyEclipse 的 Java Web 工程目录结构IDE 目录结构截图本地的工作…

一天发多少短信会封号_枸杞一天吃多少?吃多了会怎样?黑枸杞红枸杞哪个好?...

●枸杞一天吃多少?其实枸杞作为一种滋补品,不适合过多的使用,因为那样反而会造成反作用和不良影响,健康的成年人每天吃20克左右就合适了,这样对一些疾病的治疗,才可以发挥更好的效果。如果是用枸杞子泡水喝…

IntelliJ IDEA for Mac 如何将普通 Java 项目变为 Web 项目

点击菜单栏 File --> Project Structure 在弹出的窗口中点击选择左侧的 Facets,接着点击右边的 ,弹出的菜单中选择 web 在弹出的 『Choose Module』窗口中选择要转为 web 的项目(模块),然后点击 OK 选择好模块后…

MacBook 如何强制删除『无法正常卸载』的应用程序

文章目录第一步:点击电脑屏幕左上角的 图标,再点击「关于本机」第二步:点击「储存空间」选项卡,接着点击「管理」第三步:选择左侧边栏的「应用程序」,然后在右侧的程序列表中选择要“删除”的程序&#x…