HTTP报文、状态码

请求报文

在这里插入图片描述

  • 开始行:定义了方法,访问地址,协议版本,CRL回车换行符
  • 首部行:存在多行,也就是首部的各种状态,后边跟一个空白行。
  • 实体主体:通常不用,一般上传文件的时候才会用到

响应报文

在这里插入图片描述

  • 状态行:也就是响应码和协议版本
  • 首部行:同样是各种首部字段,例如:cookie,时间等等
  • 实体主体:一般用不上在这里插入图片描述

method方法

  • GET:从服务器获取一个资源
  • HEAD:只从服务器获取文档的响应首部
  • POST:向服务器输入数据,通常会由网关程序继续处理
  • PUT:将请求的主体部分存储在服务器中,如上传文件
  • DELETE:请求删除服务器上指定的文档
  • TRACE:追踪请求到达服务器中间经过的代理服务器
  • OPTIONS:请求服务器返回指定资源支持使用的请求

首部解释

在这里插入图片描述
在这里插入图片描述
通用首部
Date:报文的创建时间
Connection:连接状态,如keepalive,close
Via:显示报文经过的中间节点(也就是代理服务器)
Cache-control:控制缓存

请求首部
Accept:通过服务器自己可接受的媒体类型(如:text/html, application/xml…)
Accept-encoding:接收编码格式,一般指压缩机制,如:gzip,deflate,sdch等
Accept-language:接受的语言
Host:请求的服务器名称和端口
Referer:指当前的资源是由哪个资源转过来的
User-agent:客户端代理

条件式请求首部
if-modified-since: 自从指定时间后,请求的资源是否发生过修改
if-none-match:本地缓存中存储的文档的ETag标签是否与服务器文档的Etag不匹配;

安全请求首部
Authorization:向服务器发送认证信息,如账号和密码
Cookie:客户端向服务器发送cookie

代理请求首部
Proxy-Authorization: 向代理服务器认证

响应首部
age:响应持续时长
Server:服务器程序软件名称和版本; 一般在服务器端要移除此项

协商首部
accept-ranges:服务器可接受的请求范围类型
Vary:服务器查看其它首部列表

安全响应首部
set-cookie:向客户端设置cookie
WWW-Authenticate:来自服务器的对客户端的质询认证表单

实体首部
Allow:列出对此实体可使用的请求方法
Location:告诉客户端真正的实体位于何处
Content-Length: 主体的长度
Content-Location: 实体真正所处位置;
Content-Type:主体的对象类型

状态码

  • 100-101 信息提示,一般很少出现
  • 200-206 成功,表示请求的所有数据已经成功返回
  • 300-305 重定向
  • 400-415 错误,客户端错误
  • 500-505 错误,服务器端错误

常见的类型

200:表示服务器端成功处理了请求。返回客户端想访问的网页
301:请求的URL指向的资源已经被删除,但在响应报文中首部的location处指明了资源现在所在的新位置。
302:与301相似,但在响应报文中的首部location处指明了资源现在所在的临时位置。
304:如果客户端发送了带有条件式的方法进行访问,而文档内容并没有发生改变,服务器就会响应此状态码
401:需要输入账号和密码的认证方式才能访问资源 403:请求被禁止 404:服务器无法找到客户请求的资源 500:服务器内部错误
502:代理服务器从后端服务器接收到了一条伪响

猜你喜欢

转载自blog.csdn.net/qq_44564366/article/details/104901365