HTTP网络协议四:HTTP报文及报文字段说明
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报文及报文字段说明相关推荐
- 浅谈网络协议(四) IP的由来--DHCP与PXE
2019独角兽企业重金招聘Python工程师标准>>> 上一节说过,IP就是一台计算机的通讯地址,要和其他机器通讯,就需要一个通讯地址,就要给网卡配置这么一个地址. 配置 IP 那如 ...
- 网络协议(十四):WebSocket、WebService、RESTful、IPv6、网络爬虫、HTTP缓存
网络协议系列文章 网络协议(一):基本概念.计算机之间的连接方式 网络协议(二):MAC地址.IP地址.子网掩码.子网和超网 网络协议(三):路由器原理及数据包传输过程 网络协议(四):网络分类.IS ...
- 网络协议分析期末复习专题(二)
期末重点 1.过滤器:区分显示过滤器和捕获过滤器;表达式写监听端口和报文. 2.嗅探:通过集线器,交换机或其他设备进行嗅探;以及嗅探器的位置;网卡可以进行嗅探的原因(混杂模式). 3.网络协议分析:I ...
- 网络协议分析期末复习专题(一)
期末重点 1.过滤器:区分显示过滤器和捕获过滤器;表达式写监听端口和报文. 2.嗅探:通过集线器,交换机或其他设备进行嗅探;以及嗅探器的位置;网卡可以进行嗅探的原因(混杂模式). 3.网络协议分析:I ...
- 网络协议从入门到底层原理(6)应用层 - 域名、DNS、DHCP、HTTP(ABNF、HTTP报文格式、请求方法、头部字段、状态码、跨域)、代理、CDN
应用层 域名( Domain Name)- 顶级域名.二级域名 DNS - DNS服务器.常用命令 DHCP(DISCOVER.OFFER.REQUEST.ACKNOWLEDGE) HTTP HTTP ...
- 网络协议报文理解刨析篇二(再谈Http和Https), 加上TCP/UDP/IP协议分析(理解着学习), 面试官都惊讶你对网络的见解
目录 前文链接(系列助学, 也为后文学习做铺垫, 可按需读取) 一. 再谈HTTP再理解 二. HTTP对比学习HTTPS HTTP和HTTPS的区别如下: 三.TCP协议 (三次握手四次挥手细节过 ...
- 网络协议篇之SNMP协议(一)——SNMP报文协议
(前言:最近工作中遇到大量的网络协议开发,现就其中一些网络协议的基础知识进行整理,文中借鉴了一些大神的整理,后面会贴上链接,如侵删) 简单网络管理协议(SNMP)是TCP/IP协议簇的一 ...
- 网络协议分层及报文格式大全
推荐一个查看网络协议分层及报文格式的网站,非常清晰! http://www.023wg.com/message/message/cd_feature_cover.html
- https网络编程——HTTP协议的简介、HTTP报文结构和代理、HTTP加速解析方法(哈希加速、协议状态机)
参考:HTTP协议的简介及其工作原理等 地址:https://qingmu.blog.csdn.net/article/details/108046553?spm=1001.2014.3001.550 ...
- 【计算机网络】网络层 : ICMP 协议 ( ICMP 差错报文 | 差错报文分类 | ICMP 询问报文 | ICMP 应用 | Ping | Traceroute )
文章目录 一.ICMP 协议 二.ICMP 协议 简介 三.ICMP 五种差错报告报文 四.ICMP 差错报文形成 五.ICMP 差错报文 不发送 情形 六.ICMP 询问报文 七.ICMP 应用 一 ...
最新文章
- 九度oj 题目1411:转圈
- 负数对2取余_不同语言的负数取余问题
- 【深入浅出-JVM】(序)
- Crash/Instance Recovery与Media Recovery的本质区别
- linux权限776代表,Linux 权限设置chmod
- mysql免安装服务器配置_MYSQL免安装环境配置
- UIScrollView加约束
- 如何在ASP.NET Core中建立有效的分页
- win7查看tomcat端口_想研究Tomcat性能调优,看这篇就够了
- Python在线编程网站
- 网络广告的发布渠道和方式
- 百度云图片识别(ImageRecognition)
- ROS学习笔记(二)launch文件初步使用
- RabbitMQ无法连接
- mc服务器fabric安装位置,也许这是史上最详细的Fabric安装教程,助你在1.14/1.15安装mod...
- ROC曲线,AUC面积
- Panda3D 初学者教程(一)
- 3D游戏设计作业(三)
- SetDlgItemText函数(详解)
- (斯坦福机器学习笔记)之经验风险最小化