Dzming.Li

应用层

6.5 WWW

6.5.1 WWW的概念与组成结构

WWW包括Web 服务器,浏览器,HTTP等部分。 一个Web网页通常会有一个HTML,在基本页中再引用若干其他对象。i

每一个URL有两部分组成,协议名:主机域名,端口号,对象的路径名,query

6.5.2 HTTP协议

6.5.2.1 HTTP及其特点

HTTP协议的规范定义的并不会,流行的web客户端往其中添加新功能,成为了事实上的标准。

6.5.2.2 HTTP交互过程

6.5.2.3 持久和非持久连接的HTTP

HTTP根据使用策略的不同,可以分为非持久连接和持久连接。

HTTP 1.0默认使用非持久连接。HTTP/1/1默认使用持久连接

每个请求

HTTP/1.1可以在请求头中附加Connection:close认为自己是持久的。

6.5.2.4 HTTP报文

HTTP报文由四部分组成:

  • 起始行
  • 首部行
  • 空白行
  • 报文主体

6.5.2.4.1 请求报文结构

6.5.2.4.2 响应报文结构

SP 表示空格,CRLF 表示回车换行。首部行可以有多行,空白行分隔首部与报文主体;各栏宽度仅为示意。

6.5.2.4.3 请求方法

HTTP有一下集中典型请求方法

  • GET: 请求读取URL标识的信息
  • HEAD: 请求读取URL标识的信息首部,也就是响应报文中不包含对象
  • POST: 向服务器提交信息,我们登录帐号,填表单都是在post
  • PUT: 在指名的URL下存储一个文档
  • OPTION: 请求一些选项的信息,不必深入理解

HTTP状态码由三位十进制数组成 1xx: 信息提示 2xx: 成功 3xx: 重定向 4xx: 客户端错误 5xx: 服务器端粗偶

常见的: 100: Continue 200: OK 301: Move Permanently 404: Not Found 505: HTTP Version Not supported

6.5.2.5 HTTP交互过程响应时间分析

6.5.2.6 Cookie工作原理

HTTP是无状态协议,不保持客户的任何信息,但是无论是登录论坛还是购物网站。网站需要记住用户的身份,进行追踪。

浏览器会通过在响应报文中的Set-cookie这一栏给用户分配Cookie

网站要自己在后台存储和维护Cookie信息,浏览器也要自己存储和管理自己的Cookie,浏览器如果发现对应网站有Cookie,就会在发送请求的时候携带Cookie