HTTP协议整理

URI与URLhtml

  • URI能够分为URL,URN或同时具有locators和names特性的一个东西
  • URN做用就好像一我的的名字,URL就像一我的的地址。
  • URN肯定了东西的身份,URL提供了找到它的方式

HTTP报文头web

  • HTTP的报文头大致能够分为四类,分别是:通用报文头、请求报文头、响应报文头和实体报文头
  • 在HTTP/1.1里一共规范了47种报文头字段。

通用报文头浏览器

  1. 首部字段名缓存

    说明
    Cache-Control 控制缓存的行为
    Connection 逐跳首部、链接的管理
    Date 建立报文的日期时间
    Pragma 报文指令
    Trailer 报文末端的首部一览
    Transfer-Encoding 指定报文主体的传输编码方式
    Upgrade 升级为其余协议
    Via 代理服务器的相关信息
    Warning

    错误通知服务器

 请求报文头编码

首部字段名 说明
Accept 用户代理可处理的媒体类型
Accept-Charset 优先的字符集
Accept-Encoding 优先的内容编码
Accept-Language 优先的语言(天然语言)
Authorization Web认证信息
Expect 期待服务器的特定行为
From 用户的电子邮箱地址
Host 请求资源所在服务器
If-Match 比较实体标记(ETag)
If-Modified-Since 比较资源的更新时间
If-None-Match 比较实体标记(与If-Match相反)
If-Range 资源未更新时发送实体Byte的范围请求
If-Unmodified-Since 比较资源的更新时间(与If-Modified-Since相反)
Max-Forwoards 最大传输逐跳数
Proxy-Authorization 代理服务器要求客户端的认证信息
Range 实体的字节范围请求
Referer 对请求中URI的原始获取方
TE 传输编码的优先级
User-Agent HTTP客户端程序的信息

响应报文头spa

首部字段名 说明
Accept-Ranges 是否接受字节范围请求
Age 推算资源建立通过时间
ETag 资源的匹配信息
Location 令客户端重定向至指定URI
Proxy-Authenticate 代理服务器对客户端的认证信息
Retry-After 对再次发起请求的时机要求
Server HTTP服务器的安装信息
Vary 代理服务器缓存的管理信息
WWW-Authenticate 服务器对客户端的认证信息

实体报文头代理

首部字段名 说明
Allow 资源可支持的HTTP方法
Content-Encoding 实体主体适用的编码方式
Content-Language 实体主体的天然语言
Content-Length 实体主体的大小(单位:字节)
Content-MD5 实体主体的报文摘要
Content-Range 实体主体的位置范围
Content-Type 实体主体的媒体类型
Content-Location 替代对应资源的URI
Expires 实体主体过时的日期时间
Last-Modified 资源的最后修改日期时间

请求头ACCEPT做用:浏览器端能够接受的媒体类型htm

Accept: text/html 表明浏览器能够接受服务器回发的类型为 text/html,也就是咱们常说的html文档,若是服务器没法返回text/html类型数据,服务器应该返回一个406错误(Non Acceptable)ip

Accept: */* 表明浏览器能够处理全部类型。

若是想要给显示的媒体类型增长优先级,则适用q=来额外表示权重值,权重值q的范围是0~1(可精确到小数点后3位),且1为最大值。不指定权重值时,默认权重为q=1.0。当服务器提供多种内容时,将会首先返回权重值最高的类型。

请求头Accept-Encoding做用:浏览器申请本身接收的编码方法,一般制定压缩方法,是否支持压缩,支持什么压缩方法(gzip,deflate)

请求头Accept-Language做用:浏览器声明本身接收的语言

Accept-Language: zh-cn,zh;q=0.7,en-us,en;q=0.3

客户端在服务器有中文版资源的状况下,会请求其返回中文版对应的响应,没有中文版时,则请求返回英文版响应。

通用头Connection

Connection: keep-alive 当一个网页打开完成后,客户端和服务器之间用于传输HTTP数据的TCP链接不会关闭,若是客户端再次访问这个服务器上的网页,会继续使用这一条已经创建的链接。

Connection: close 表明一个Request完成后,客户端和服务器之间用于传输HTTP数据的TCP链接会关闭,当客户端再次发送Request,须要从新创建TCP链接。

请求头Host做用:请求报头域主要用于指定被请求资源的Internet主机和端口号,它一般从HTTP URL中提取出来。

咱们在浏览器中输入: http://www.abab.com:8080

浏览器发送的请求消息中,就会包含Host请求报头域,以下:

Host: www.abab.com:8080

请求头Referer做用:当浏览器向web服务器发送请求的时候,通常会带上Referer,告诉服务器我是从哪一个页面连接过来的,服务器籍此能够得到一些信息用于处理。

相关文章
相关标签/搜索