HTTP是什么

HTTP定义

HTTP( Hypertext Transfer Protocol, 超文本传输协议) 是在万维网上进行通信时
所使用 的协议方案。

HTTP的地位

了解HTTP协议的地位之前首先简单了解一下网络协议分层。HTTP处于网络协议的应用层协议。

HTTP协议组成

报文

定义

HTTP报文就是数据交换标准和文本数据的集合。好比物流里的包裹。

组成
start line(起始行)

Request-URL(请求URL):所请求资源,或者URL路径组件的完整URL。

Method(请求方法):客户端希望服务器对请求资源执行的动作

Status Code(状态码):这三位数字描述了请求过程中所发生的情况。

Reson-phrase(原因短语):跟在状态码后面,为人提供对状态的解释

version(版本):报文所使用的HTTP版本

header(首部)

Accept首部

顾名思义,Accept为客户端提供了将其自己喜好方式和能力传递给服务器端。服务器根据Accept返回对应的信息,避免了服务器传输一些多余的信息。

Accept:告诉服务器能够发送哪些媒体类型

Accept-charset:告诉服务器能够发送哪些字符集

Accept-Encoding:告诉服务器能够发送哪些编码方式

Accept-Language:告诉服务器可以发送那些语言

TE:告诉服务器可以使用哪些扩展的传输编码

通用缓存首部

Cache-Control:用于随报文传送缓存指示

pragma:另一种随报文传送指示的方式

通用首部

Connetion:允许客户端和服务器端指定与请求

body(主体)

HTTP通信

Connect
(a)用户URL拨号:输入页面地址,点击超链接,点击提交按钮
(b) 浏览器从 URL 中解析出服务器的主机名;
(c) 浏览器通过DNS将服务器的主机名转换成服务器的 IP 地址;
(d) 浏览器将端口 号(如果有的话) 从 URL 中解析出来;

(e)浏览器发起到这个IP地址端口 80的连接

(f)服务器监视端口监听客户端电脑的请求,建立握手
Request

客户端建立TCP管道浏览器向服务器发送一条HTTP GET报文

Response
浏览器从服务器读取HTTP响应报文
Close
浏览器关闭连接

认识客户端和服务器端

读书笔记2:HTTP协议的更多相关文章

  1. 《HTTPS权威指南》读书笔记——SSL/TLS协议

    记录协议(record protocol) 负责在传输连接上交换所有底层信息 每一条记录以短标头开始,标头包含记录内容的类型.协议版本和长度 握手协议(handshake protocol) 整个过程 ...

  2. 《TCP/IP详解卷1:协议》第1章 概述-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  3. 《TCP/IP详解卷1:协议》第2章 链路层-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  4. 『TCP/IP详解——卷一:协议』读书笔记——02

    2013-08-16 20:07:11 1.3 TCP/IP的分层 这是一个很好的图,要多看!!图上有些细节会在今后的笔记中提到,看不懂不必深究. IP是网络层上的主要协议,同时被TCP和UDP(这两 ...

  5. 《TCP/IP详解卷1:协议》第3章 IP:网际协议(1)-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  6. 《TCP/IP详解卷1:协议》第3章 IP:网际协议(2)-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  7. 《TCP/IP详解卷1:协议》第4章 ARP:地址解析协议-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  8. 《TCP/IP详解卷1:协议》第5章 RARP:逆地址解析协议-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  9. 《TCP/IP详解卷1:协议》第6章 ICMP:Internet控制报文协议-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

  10. 《TCP/IP详解卷1:协议》第11章 UDP:用户数据报协议-读书笔记

    章节回顾: <TCP/IP详解卷1:协议>第1章 概述-读书笔记 <TCP/IP详解卷1:协议>第2章 链路层-读书笔记 <TCP/IP详解卷1:协议>第3章 IP ...

随机推荐

  1. Serialize----序列化django对象

    django的序列化框架提供了一个把django对象转换成其他格式的机制,通常这些其他的格式都是基于文本的并且用于通过一个管道发送django对象,但一个序列器是可能处理任何一个格式的(基于文本或者不 ...

  2. python 列表去重(数组)的几种方法

    一.方法1  代码如下 复制代码 ids = [1,2,3,3,4,2,3,4,5,6,1] news_ids = [] for id in ids:     if id not in news_id ...

  3. 【Protle99SE】PCB中各层的含义【小汇】

    忽然发现,对solder和paste,layer和plane这两对有些糊涂了,摘录网络中的文章如下: [http://www.360doc.com/content/10/0608/15/514342_ ...

  4. Zookeeper未授权访问

    l 漏洞名称: zookeeper未授权访问 l  漏洞影响版本: zookeeper l  漏洞细节: ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubb ...

  5. Sencha Toucha之Ext.Ajax

    Ext.Ajax是Ext.data.Connection的hi一个单实例,不需要使用new或者Ext.create方法创建实例后再使用. 类的继承关系为: Ext.Base Ext.data.Conn ...

  6. Mybatis部分

    Mybatis部分 1.JDBC编程有哪些不足之处,MyBatis是如何解决这些问题的? ① 数据库链接创建.释放频繁造成系统资源浪费从而影响系统性能,如果使用数据库链接池可解决此问题. 解决:在Sq ...

  7. 迪米特法则(LoD),即最少知识原则

    解释: 如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用.如果其中一个类需要调用另一个类的某一个方法的话,可以通过第三者转发这个调用. 重点: 在类的结构上,每个类都应当尽量降低成员 ...

  8. VS中的路径宏 vc++中OutDir、ProjectDir、SolutionDir各种路径 转

    说明 $(RemoteMachine) 设置为“调试”属性页上“远程计算机”属性的值.有关更多信息,请参见更改用于 C/C++ 调试配置的项目设置. $(References) 以分号分隔的引用列表被 ...

  9. Spring管理Bean的三种创建方式

    1.使用类构造器实例化  (90%以上都是使用这种) <bean id=“orderService" class="cn.itcast.OrderServiceBean&qu ...

  10. hibernate对象关系实现(四)继承实现

    继承实现方式分为三种:subclass; joined-subclass;union-subclass a.类中体现   b.库中体现分为三种: b.1:一种方式:人和学生公用一张表,添加一个辨别字段 ...