协议是指计算机通信网络中两台计算机之间进行通信所必须共同遵守的规定或规则,超文本传输协议(HTTP)是一种通信协议,它允许将超文本标记语言(HTML)文档从Web服务器传送到客户端的浏览器。
特点
灵活:HTTP允许传输任意类型的数据对象。正在传输的类型由Content-Type加以标记。
无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
无状态;http协议是无状态的,同一个客户端的这次请求和上次请求是没有对应关系,对http服务器来说,它不知道这两个请求来自同一个客户端。 为了解决这个问题, 所以Web程序引入了Cookie机制来维护状态.
url
url的基本格式:
URL(Uniform Resource Locator) 地址用于描述一个网络上的资源, 基本格式如下
schema://host[:port#]/path/.../[?query-string][#anchor]
scheme 指定低层使用的协议(例如:http, https, ftp)
host HTTP服务器的IP地址或者域名
port# HTTP服务器的默认端口是80,这种情况下端口号可以省略。如果使用 了别的端口,必须指明,例如 http://www.cnblogs.com:8080/
path 访问资源的路径 query-string 发送给http服务器的数据
anchor- 锚 http(超文本传输协议)是一个基于请求与响应模式的、无状态的、应用层的协议,常基于TCP的连接方式,HTTP1.1版本中给出一种持续连接的机制,绝大多数的Web开发,都是构建在HTTP协议之上的Web应用。
osi(Open System Interconnection)七层协议
OSI:是一个开放性的通信系统互连参考模型,他是一个定义得非常好的协议规范。
OSI模型有7层结构,每层都可以有几个子层。
OSI的7层从上到下分别是
7 应用层:与其它计算机进行通讯的一个应用,它是对应应用程序的通信服务的。
6 表示层
5 会话层
4 传输层
3 网络层
2 数据链路层
1 物理层 ;
其中高层(即7、6、5、4层)定义了应用程序的功能,下面3层(即3、2、1层)主要面向通过网络的端到端的数据流。
http协议请求:
http请求由三部分组成,分别是:请求行、消息报头、请求正文。
请求行:post /performance-core/sistem/Sumary?type=1&timeSte,p=778 HTTP/1.1
消息报头: host:hrcloud.yyuap.com Content-Length:22 Connection:Keep-Alive Cache-Control:no-cache
请求正文: type=1
http协议响应
http响应也是由三部分组成,分别是:状态行、消息报头、响应正文。
状态行:HTTP/1.1 200 OK
响应正文:就是服务器返回的资源内容
常用的请求报头
请求报头允许客户端向服务器端传递请求的附加信息以及客户端自身的信息
Accept(指定):用于客户端指定接受哪些类型的信息 eg:Accept:image/gif
Accept-Charset:用于客户端指定接收的字符集 eg:UTF-8...
Accept-Language请求报头 指定接收一种自然语言
User-Agent[ˈeɪdʒənt] :列出了你的操作系统的名称和版本,你所使用的浏览器的名称和版本这个报头不是必须的
Accept-Encoding:gzip 是用于指定可接受的内容编码 referer:http://www.baidu.com