HTTP网络协议(二)

转载 2017年01月03日 13:37:31

HTTP报文内的HTTP信息

HTTP协议交互的信息被称为HTTP报文,请求端的HTTP报文叫做请求报文,响应端的叫做响应报文。 
这里写图片描述 
HTTP为了提升传输速率,其在传输数据时,按照数据原样进行压缩传输,相应地客户端会接受并解析内容编码后的实体。 
在HTTP通信过程中,可以让大容量的数据进行分块分割传输,这方式能够让浏览器逐步显示页面。 
HTTP采纳了多部分对象集合,故发送的一份报文主体内可含有多类型实体,不过需要在首部字段里加Content-type,并使用boundary字符串来划分多部分对象集合指明的各类实体,boundary字符串指定的各个实体的起始之前插入”–”标记,而在多部分对象集合对应的字符串的最后插入”–”标记作为结束,示例: 
这里写图片描述
HTTP可以在请求首部那里指定范围来获取指定的内容。

  • Range:byte=5001-10000,获取从5001到10000这段字节。
  • Range:byte=5001,获取从5001之后全部的字节。
  • Range:byte=-3000,5000-7000,获取从0到3000这段字节,获取从5000到7000这段字节

返回结果的HTTP状态码

这里写图片描述
以下会列出常见的几个HTTP状态码:

  • 200表示正常处理请求,并成功返回正常的数据。
  • 204表示正常处理请求,但没有资源可返回。
  • 206表示正常处理请求,并返回请求那部分的资源数据。
  • 301永久性的给请求资源分配了新的URI,故以后使用该资源需要现在所指的新URI。
  • 302临时性的给请求资源分配了新的URI,这只是通知这次请求使用该新URI。
  • 303明确通知请求采用GET方法且用该资源另一个URI发送。
  • 304表示客户端发送附带条件的请求时(附带条件指的是If-Match,If-Modified-Since等),服务器允许请求访问资源,但未满足条件的请况。
  • 307与302类似,是临时重定向。
  • 400表示请求报文中存在语法错误。
  • 401表示发送的请求需要有通过HTTP认证的认证信息,如果之前已进行过一次请求,则表示用户认证失败。
  • 403表示请求资源的访问被服务器拒绝了(一般都是权限问题)。
  • 404表示服务器上无法找到请求的资源。
  • 500表示服务器端在执行请求时发生了错误。
  • 503表示服务器暂时处于超负荷或正在进行停机维护,现在无法处理请求。

与HTTP协作的Web服务器

HTTP允许一台HTTP服务器搭建多个Web站点,例如在相同的IP地址下,可以用虚拟主机寄存多个不同主机名和域名的Web网站,这样一台服务器可以托管www.tricorder.jp和www.hackrj.jp两个域名。 
代理:代理是一种具有转发功能的应用程序,它能接受客户端的请求后转发给服务器,同样能接受服务器返回的响应转发给客户端,代理可以分为下面两类:

  • 缓存代理:代理转发响应时,会预先将资源的副本保存在代理服务器上。
  • 透明代理:转发请求或响应时,不对报文做任何加工。 
    这里写图片描述

网关:是转发其他服务器通信数据的服务器,接受从客户端发送来的请求时,它就像自己拥有资源的源服务器一样对请求进行处理,网关能是通信线路上的服务器提供非HTTP协议服务。 
这里写图片描述
隧道:是在相隔甚远的客户端和服务器两者之间进行中转,并保持双方通信连接的应用程序,这过程可以使用SSL等手段进行加密。 
这里写图片描述
缓存一般有两种方式:客户端缓存和代理服务器缓存,客户端一般缓存在本地磁盘中,代理服务器一般缓存在本地服务器存储空间中,不过这两种缓存会根据有效期限,请求要求,服务器该资源更新等情况来判断缓存是否失效,一旦缓存失效,再次请求则会重新拉取源服务器的该资源并对其缓存

转自http://blog.csdn.net/xuguoli_beyondboy/article/details/48038921

网络协议系列之二:HTTP(2)

这篇文章继续对HTTP协议进行说明。一个http事务包括客户向HTTP服务器发送请求以及服务器向客户端发送响应两个过程。根据事务的特点,这两个过程具有原子性,任何一个过程失败都会进行回滚(恢复事务之前...

HTTP网络协议(二)

HTTP报文内的HTTP信息HTTP协议交互的信息被称为HTTP报文,请求端的HTTP报文叫做请求报文,响应端的叫做响应报文。 HTTP为了提升传输速率,其在传输数据时,按照数据原样进行压缩传输...

http网络协议分析器包括源码

  • 2009年07月08日 21:54
  • 456KB
  • 下载

HTTP网络协议的工作原理

  • 2014年09月20日 19:48
  • 192KB
  • 下载

NODEMCU调试心得8 - 关于网络协议 HTTP 3 之web框架

关于网络协议 HTTP 3 之web框架这一节应该算外传的性质。得到qq群里会飞的小猪启发,打算写一个web框架,处理比较复杂的服务器响应。之前的例程中,Html和图片的代码都是嵌入到程序中。而一般情...

网络协议分析工具 HTTP Analyzer

  • 2017年10月25日 15:49
  • 8.97MB
  • 下载

iOS网络协议----HTTP/TCP/IP浅析

一.TCP/IP协议        话说两台电脑要通讯就必须遵守共同的规则,就好比两个人要沟通就必须使用共同的语言一样。一个只懂英语的人,和一个只懂中文的人由于没有共同的语言(规则)就没办法沟通...

网络协议HTTP1.1协议

  • 2008年08月28日 16:52
  • 380KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:HTTP网络协议(二)
举报原因:
原因补充:

(最多只允许输入30个字)