0
点赞
收藏
分享

微信扫一扫

常用 Web 框架

HTTP目前的版本是HTTP/1.1,定义在RFC 2616规范上。

HTTP的模型很简单,是一个B/S模型,由客户端和服务器组成,交互流程很简单。

◎一个HTTP客户端发送请求至HTTP服务器,然后等待服务器的响应。

 

◎一个HTTP服务器负责监听端口(默认是80),然后等待客户端的请求,处理完成后,回复给客户端。

 

【HTTP语义】

 

HTTP消息主要包括两部分,分别是HTTP语义和HTML实体。

 

HTTP消息由三部分组成。

 

◎请求行或响应行。

◎HTTP头部。

◎HTML实体,包括请求实体和响应实体。

 

前面两部分是HTTP的语义信息,客户端和服务器使用语义信息进行交谈,最后一部分就是HTML实体,由浏览器进行处理,对用户更有意义。

 

1)HTTP头部

 

(1)Accept-Encoding:gzip

 

表示浏览器支持的数据压缩算法是gzip,它等于告之服务器,是否可以使用gzip算法压缩响应后再发送。

 

(2)Host:www.example.com

 

该头部只对客户端有用,表示客户端连接互联网上的某个服务器,客户端在连接之前需要先通过DNS协议解析出www.example.com的IP地址,然后连接服务器并发送请求。

 

2)请求行

 

请求行由方法、URL、HTTP版本组成。

 

方法表示客户端以何种方式请求服务器上的资源,比如GET方法表示获取资源,POST方法表示更新服务器资源;URL表示互联网资源的地址;HTTP/1.1表示客户端本次请求所遵循的HTTP版本。

 

3)响应行

 

响应行由HTTP版本、状态码、信息提示符组成。

 

HTTP/1.1表示本次响应支持HTTP/1.1;200表示本次请求被正确处理了,如果是404表示服务器上不存在客户端需要的资源;信息提示符和状态码是一一对应的,不同的状态码有不同的描述信息。

【HTTP的特点】

1)客户端/服务器模型

HTTP是一个客户端/服务器模型,客户端和服务器通过网络交换信息。

2)HTTP是无状态的

HTTP是基于TCP的,当一个TCP连接关闭后,所有的HTTP请求/响应信息将全部消失。

在HTTP中,客户端通过Socket技术创建一个TCP/IP连接,并连接到服务器,完成信息交换后,就会关闭TCP连接。

所谓的无状态就是每次请求完成后,不会在客户端和服务器上保存任何的信息。

为了保持状态,出现了Cookie和Session技术,但是Cookie技术设计得非常不严谨,引发了很多安全问题。

3)HTTP是跨平台的

4)HTTP用途很广泛

HTTP更多的是一个数据载体,对于Web应用来说更重要的是浏览器如何处理这些数据。

不管是iOS还是Andriod应用,都需要调用基于HTTP的API接口。

 

举报

相关推荐

0 条评论