HTTP 初步知识总结

1.HTPP报文

HTTP协议以报文的格式传递数据,报文有三部分组成:起始行(对报文进行描述),首部块(包含属性),主体(包含数据,可选)
全部的HTTP报文均可以分为两类:请求报文(Requset Message)和响应报文(Response Message)html

1.1起始行:

  • 请求行
    请求方法,URL,客户端的HTTP版本
  • 响应行
    响应报文使用的HTTP版本,数字状态码,以及描述状态的缘由短语

2.首部:

2.1 通用首部:

  • Connection 容许客户端和服务器指定与链接有关的选项
  • Date    报文建立时间
  • MIME-Version Trailer TransferCoding Update Via
  • Keep-Alive:(只有提供Connection:Keep-Alive时会有,设置max和timeout)

2.2 通用缓存首部

  • Cache-Control 用于随报文传送的缓存只是
  • Pragma 随报文传递指示的方式,但并不专用于缓存,优先使用Cache-Control

2.3 请求首部

  • Client-IP :运行客户端的机器的IP地址
  • From:提供了客户端用户的EMail地址
  • Host:接受请求的服务器的主机地址以及端口号
  • Refer:
  • User-Agent:发起请求的应用名称
  • UA-Color UA-CPU UA-Disp UA-OS UA-Pixels(有副总用,仅限于特殊的客户端需求)

Accept首部
为客户端提供一种将其喜爱和能力告知服务器的方式。vue

  • Accept 媒体类型
  • Accept-Charset字符集
  • Accept-Encoding编码方式+
  • Accept-Language语言

条件请求首部
经过条件请求首部,客户端能够为请求加上限制,要求服务器在对请求进行响应以前,确保某个条件为真。git

  • Expect:容许客户端列出某请求所要求的服务器行为
  • If-Match:若是实体标记与文档当前的实体标记相匹配,就获取这份文档。
  • If-Modfified-Since:除非在某个指定的日期以后资源被修改过,不然就限制这个请求。
  • If-None-Match:若是实体标记不匹配,获取文档。
  • If-Range:容许对文档的某个范围进行条件请求。
  • If-Unmodifier-Since:除非在某个指定日期后没有被修改过,不然就闲着这个请求
  • Range:若是服务器支持范围请求,就请求资源的制定范围。

安全请求首部:github

  • Authorization:包含了客户端提供给服务器,以便进行自身认证的数据
  • cookie:一个令牌

代理请求首部:浏览器

  • Max-Forward:
  • Proxy-Authorization
  • Proxy-Connection

2.4 响应首部

信息性首部缓存

  • Age
  • Public
  • Retry-After
  • Server
  • Title
  • Warning

协商首部安全

  • Accept-Ranges
  • Vary

安全响应首部服务器

  • Set-Cookie

实体首部markdown

  • Allow
  • Location

2.5 内容首部

  • Content - (Base + Encoding + Language + Length + Location+ MD5 + Range+ Type)

2.6实体缓存首部

  • ETag
  • Expires
  • Last-Modified

GET方法负责从服务器获取一个文档
POST方法向服务器发送须要处理的数据cookie

对HTTP304的理解
当在浏览器里输入google.com并按回车的时候发什么什么
HTTP 状态消息

相关文章
相关标签/搜索