HTTP不同版本的区别

HTTP报文格式

HTTP标准:由万维网协会(W3C)互联网工程任务组(IETF)协调指定,最终发布了一系列的RFC
RFC:Request For Comments-请求意见稿

HTTP报文格式

HTTP请求报文
方法 URI 版本 CRLF 请求行
首部字段名 : CRLF 首部行
首部字段名 : CRLF 首部行
CRLF
实体主体
HTTP响应报文
版本 状态吗 短语 CRLF 状态行
首部字段名 : CRLF 首部行
首部字段名 : CRLF 首部行
CRLF
实体主体

HTTP报文内容说明

  • HTTP请求方法
    GET、HEAD、POST、PUT、DELETE、CONNECT、OPTIONS、TRACE
方法 说明
GET 用于读取操作、请求参数直接拼接到URL后边(浏览器对URL参数长度由限制)
POST 常用于添加、修改、删除的操作,请求参数可以放到请求体中(没有限制大小)
HEAD 请求得到与GET请求相同的响应,但是没有请求题(获取资源大小)
OPTIONS 御用获取目的资源所支持的通信选项,比如服务器支持的请求方式
PUT 用于对已存在的资源进行整体覆盖
DELETE 用于删除资源
TRACE 请求服务器回显其收到的请求信息,主要用于HTTP请求的测试或诊断
CONNECT 可以开启一个客户端与所请求资源之间的双向沟通的渠道,创建隧道
  • HTTP请求头字段Request Header Filed
头部字段 说明 事例
User-Agent 浏览器身份标识字段 User-Agent:xxxx
Host 服务器的域名端口号 Host:xxxxx
Date 发送该消息的日期和时间 Date:xxx
Refer 标识一个浏览器所访问的上一个页面 Refer:xxx
Content-Type 请求的类型 Content-Type:multipart/form-data
Content-Length 请求体的长度(以字节为单位) Content-Type:6666
Accept 能够接收响应的类型(Content-Types) Accept:text/plain
Accept-Charset 能够接受的字符集 Accept-Charest:GB232 , utf-8
Accept-Encoding 能够接受的编码方式列表 Accept-Encoding :gzip
Accept-Langue 能够接受的响应内容的自然语言列表 Accept-Langue:en-US
Origin 发起一个针对跨域资源共享的请求 Origin:www.bai.com
Cookie 之前由服务器设置set-Cookie发送的Cookie Origin:www.bai.com
Connection 该浏览器想要有限使用的连接类型 Connection:keep-alive
Cache-Control 用来指定在这次的请求/响应链中的所有缓存机制都必须遵守的指令 Cache-Control:np-cache
  • HTTP响应头字段Response Header Filed
头部字段 说明 示例
Last-Modified 所请求对象的最后修改日期 Last-Modified:xxxx
Server 服务器的名字 Server:xxxxx
Expires 指定一个时间,超过该时间则认为此响应已过期 Expires:xxx
Refer 标识一个浏览器所访问的上一个页面 Refer:xxx
Content-Disposition 一个可以让客户端下载文件并建议文件名的头部 Content-Disposition:attachment; filename=“fname.text”
Access-Control-allow-Origin 指定哪些网站可参与到跨域来源资源共享过程中 Access-Control-allow-Origin:*
Set-Cookie 返回一个Cookie让客户端去保存 Set-Cookie:UserID=xxx;Max-Age=3600;Version=1
Cache-Control 告知客户端的缓存机制对象,是否可缓存这个对象,单位为秒 Cache-Control:max-age=3600
  • HTTP返回状态码
    状态码种类
头部字段 说明
信息响应 100~199
成功响应 200~299
重定向 300~399
客户端错误 400~499
服务器错误 500~599

常用状态码

状态码 短语 说明
100 Continue 请求初始部分已经被服务器收到,并且没有被服务器明确拒绝。客户端应该发送剩余的请求、如果请求已经完成,就忽略这个响应
200 OK 请求成功
302 Found 重定向请求的资源被暂时的移动到了右Location头部指定的URL上
304 Not Modified 说明无须再次传输请求的内容,也就是说可以使用缓存的数据
400 Bad Request 语法无效,服务器无法理解该请求
401 Unauthorized 由于缺乏目标资源要求的身份验证凭证
403 Forbidden 服务器右能力处理该请求,但是拒绝授权访问
404 Not Found 服务端无法找到所请求的资源
405 Method Not Allowed 服务器禁止了使用当前的HTTP方法请求
408 Request Timeout 服务器想要将没有在使用的连接关闭
500 Internal Server Error 请求服务器遇到意外,并阻止其执行请求

HTTP网络协议四:HTTP报文及报文字段说明相关推荐

  1. 浅谈网络协议(四) IP的由来--DHCP与PXE

    2019独角兽企业重金招聘Python工程师标准>>> 上一节说过,IP就是一台计算机的通讯地址,要和其他机器通讯,就需要一个通讯地址,就要给网卡配置这么一个地址. 配置 IP 那如 ...

  2. 网络协议(十四):WebSocket、WebService、RESTful、IPv6、网络爬虫、HTTP缓存

    网络协议系列文章 网络协议(一):基本概念.计算机之间的连接方式 网络协议(二):MAC地址.IP地址.子网掩码.子网和超网 网络协议(三):路由器原理及数据包传输过程 网络协议(四):网络分类.IS ...

  3. 网络协议分析期末复习专题(二)

    期末重点 1.过滤器:区分显示过滤器和捕获过滤器;表达式写监听端口和报文. 2.嗅探:通过集线器,交换机或其他设备进行嗅探;以及嗅探器的位置;网卡可以进行嗅探的原因(混杂模式). 3.网络协议分析:I ...

  4. 网络协议分析期末复习专题(一)

    期末重点 1.过滤器:区分显示过滤器和捕获过滤器;表达式写监听端口和报文. 2.嗅探:通过集线器,交换机或其他设备进行嗅探;以及嗅探器的位置;网卡可以进行嗅探的原因(混杂模式). 3.网络协议分析:I ...

  5. 网络协议从入门到底层原理(6)应用层 - 域名、DNS、DHCP、HTTP(ABNF、HTTP报文格式、请求方法、头部字段、状态码、跨域)、代理、CDN

    应用层 域名( Domain Name)- 顶级域名.二级域名 DNS - DNS服务器.常用命令 DHCP(DISCOVER.OFFER.REQUEST.ACKNOWLEDGE) HTTP HTTP ...

  6. 网络协议报文理解刨析篇二(再谈Http和Https), 加上TCP/UDP/IP协议分析(理解着学习), 面试官都惊讶你对网络的见解

    目录 前文链接(系列助学, 也为后文学习做铺垫, 可按需读取) 一. 再谈HTTP再理解 二. HTTP对比学习HTTPS HTTP和HTTPS的区别如下: 三.TCP协议  (三次握手四次挥手细节过 ...

  7. 网络协议篇之SNMP协议(一)——SNMP报文协议

    (前言:最近工作中遇到大量的网络协议开发,现就其中一些网络协议的基础知识进行整理,文中借鉴了一些大神的整理,后面会贴上链接,如侵删)        简单网络管理协议(SNMP)是TCP/IP协议簇的一 ...

  8. 网络协议分层及报文格式大全

    推荐一个查看网络协议分层及报文格式的网站,非常清晰! http://www.023wg.com/message/message/cd_feature_cover.html

  9. https网络编程——HTTP协议的简介、HTTP报文结构和代理、HTTP加速解析方法(哈希加速、协议状态机)

    参考:HTTP协议的简介及其工作原理等 地址:https://qingmu.blog.csdn.net/article/details/108046553?spm=1001.2014.3001.550 ...

  10. 【计算机网络】网络层 : ICMP 协议 ( ICMP 差错报文 | 差错报文分类 | ICMP 询问报文 | ICMP 应用 | Ping | Traceroute )

    文章目录 一.ICMP 协议 二.ICMP 协议 简介 三.ICMP 五种差错报告报文 四.ICMP 差错报文形成 五.ICMP 差错报文 不发送 情形 六.ICMP 询问报文 七.ICMP 应用 一 ...

最新文章

  1. 九度oj 题目1411:转圈
  2. 负数对2取余_不同语言的负数取余问题
  3. 【深入浅出-JVM】(序)
  4. Crash/Instance Recovery与Media Recovery的本质区别
  5. linux权限776代表,Linux 权限设置chmod
  6. mysql免安装服务器配置_MYSQL免安装环境配置
  7. UIScrollView加约束
  8. 如何在ASP.NET Core中建立有效的分页
  9. win7查看tomcat端口_想研究Tomcat性能调优,看这篇就够了
  10. Python在线编程网站
  11. 网络广告的发布渠道和方式
  12. 百度云图片识别(ImageRecognition)
  13. ROS学习笔记(二)launch文件初步使用
  14. RabbitMQ无法连接
  15. mc服务器fabric安装位置,也许这是史上最详细的Fabric安装教程,助你在1.14/1.15安装mod...
  16. ROC曲线,AUC面积
  17. Panda3D 初学者教程(一)
  18. 3D游戏设计作业(三)
  19. SetDlgItemText函数(详解)
  20. (斯坦福机器学习笔记)之经验风险最小化

热门文章

  1. 矩阵理论应用之反射变换的理解
  2. 线性代数 第四章 线性方程组 知识点总结(Jeff自我感悟)
  3. 仓储管理之计价方法——移动加权平均法
  4. dell保修(dell保修多久)
  5. 磁力泵的结构特点及使用与维修
  6. 3.7V升5V升压芯片
  7. Jquery头像编辑器
  8. mysql截取身份证号前几位_EXCEL中怎样截取身份证号前六位数字
  9. 手机反编译java源码,Android反编译(一)之反编译JAVA源码
  10. 学习mescroll的下拉刷新、上拉加载