什么是协议
计算机中的协议和现实中的协议是一样的,一式双份/多份。双方多方都遵从共同的一个规范,这个规范就可以称为协议。计算机只所以能全世界互通,协议是功不可没,如果没有协议,计算机各说各话,根本谁都听不懂谁。举个生活中的例子:A和B约定,A走的时候给B晃个电话,B看到电话别接,然后出来和A会和。结果A在给B打电话的时候B接听了,B就违反了协议,导致A浪费了话费。
HTTP教程
http://www.runoob.com/http/http-tutorial.html
HTTP重要性
无论是以后用web serverice,还是用rest做大型架构,都离不开对HTTP协议的认识。甚至可以简化的说:
- web service = http协议 + XML
- Rest = HTTP协议 + json
- 各种API,也一般是用http+XML/json来实现的。
HTTP协议工作流程
原始状态:Client与Server没有任何关系
Client建立连接,发送请求
所谓连接,就是网络上的虚拟电路。
Server沿着连接,返回响应消息
Client收到响应的HTML代码解析出文字,图像等等
Client、Server断开连接
Client、Server此时没有任何关系
注:上面讲解,出现最多的就是Client、Server。日常接触的Clinet,基本上都是浏览器。浏览器能够发送HTTP协议,但是HTTP协议不一定非得浏览器来发送,telnet也可以。如下图
Server目前主流的是:Apache、Nginx、IIS