网络出现后,带给人们生活上的改变是,我们可以随时随地在www网络浏览器网页上获取想要的信息。由于www内容丰富,浏览方便,也已经成为互联网重要要的服务。
那么超文本传输协议HTTP(Hypertext transfer protocol),是一种从www服务器传输超文本到本地浏览器的传送协议。简单地说,HTTP协议就是用户通过浏览器访问Web服务器的方式,并具备B/S(Browser/Server )结构。
今天就来与大家分享一下HTTP协议的学习。
HTTP协议承载于TCP协议之上,是一个应用层协议。有时也承载于TLS或SSL协议层之上,这个时候,就成了我们常说的HTTPS。如下图所示:
HTTP协议永远都是客户端发起请求,服务器回送响应。HTTP协议是一个无状态的协议,不会记得“上一个请求是什么”。
一次HTTP操作称为一个事务,其工作过程可分为四步:
1)建立连接。只要单击某个超级链接,HTTP的工作开始。
2)客户端发送请求。请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。
3)服务器响应。其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。
4)连接断开。当服务器的响应信息显示到客户端的浏览器上,一次HTTP操作结束
那么,先来看一下建立连接的过程:
HTTP/1.0 每次请求都需要建立新的TCP连接,连接不能复用。HTTP/1.1 新的请求可以在上次请求建立的TCP连接之上发送,连接可以复用。
请求消息格式
请求消息格式如下所示:
请求行 通用信息头|请求头|实体头 CRLF(回车换行) 实体内容
其中“请求行”为:请求行 = 方法 [空格] 请求URI [空格] 版本号 [回车换行]
请求方法
HTTP的请求方法常用如下几种:
1、GET:对服务器资源的简单请求,从服务器上获取数据。
2、POST:向服务器传送数据,主要是向服务器提交表单数据,尤其是大批量的数据。
3、HEAD:类似于GET请求,只不过返回的响应中没有具体的内容,用于获取报头。
那么,相对应的响应过程也与连接过程类似:
响应消息格式
HTTP响应消息的格式如下所示:
状态行 通用信息头|响应头|实体头 CRLF 实体内容
其中:状态行 = 版本号 [空格] 状态码 [空格] 原因 [回车换行]
继续阅读:http://www.iwiznet.cn/blog/?p=6692
文章评论(0条评论)
登录后参与讨论