关于HTTP协议的相关内容

HTTP协议是用于从www服务器传输超文本到本地浏览器的传送协议,使浏览器更加高效,使网络传输减少,保证计算机正确的传输超文本文档,还确定传输文档中的那个部分,以及那部分内容首先显示等

HTTP是一个应用层协议,由请求和响应构成,是一个标准的客户端服务器模型。

HTTP协议通常承载于TCP协议之上,有时也承载与TLS/SSL(传输层安全协议)协议层之上,默认的http端口是80,HTTPS的端口号为443;

HTTP协议永远都是客户端发起请求,服务器回送响应。限制无法在客户端未发送请求的情况下将消息推送给客户端。




HTTP的一次操作称为一个事务,工作过程分为以下四步;

1首先是客户机与服务器需要建立连接,只需单击某个超链接,HTTP.的工作开始

2建立连接后,客户端向服务器发送一个请求,请求格式:统一资源定位符(URL),协议版本号,后面是信息,包括请求修饰符,客户机信息和可能的内容。

3服务器接到请求后,给予响应的相应信息,其格式为一个状态行,包含信息的协议版本号,一个成功或错误的代码,后边是信息包括服务器信息,实现信息和可能的内容。

4客户端接收到服务器返回的信息通过浏览器显示在用户的显示屏,然后客户机与服务器断开连接。

以上过程的某一步发生错误,那么产生的错误信息将返回到客户端,游戏艾诺斯屏输出,对于用户来说,这些过程是HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了。

HTTP是一个无状态的协议。同一客户端的这次请求和上次请求是没有对应关系的。

无状态是指协议对于事务处理没有记忆功能,缺少状态意味着如果后续处理需要前面的信息,则他必须重传,这可能导致每次连接传送的数据量增大,另一方面,在服务器不需要先前信息时他的应答就较快。

HTTP协议的主要特点;

1, 支持客户/服务器模式。2简单快速,3灵活(允许传输任意类型的数据对象,用content-Type加以标记),4无连接,5无状态;

2, HTTP请求由三个部分组成,分别是请求行,消息报头,请求正文。

3, 请求行以一个方法符号开头,以空格分开,后面跟着请求的URI和协议的版本号格式如下,MethodRequest-URI Http-Version CRLF

关于Method  各个方法解释如下

GET 请求获取Request-URI所标识的资源,在浏览器的地址栏中输入网址的方式访问网页时,浏览器采用GET方法向服务器获取资源

POST 在Request-URI所标识的资源后附加新的数据,POST方法要求被请求服务器接受附在请求后面的数据,常用于提交表单。

HEAD 请求获取由Request-URI所标识的资源的响应消息头

PUT 请求服务器存储一个资源,并用Request-URI作为其标识

URI是从虚拟根路径开始的,URL是整个链接。
如URL http://zhidao.baidu.com/question/68016373.html
URI 是/question/68016373.html  协议名称://域名.根域名/目录/文件名.后缀
URI有绝对和相对之分,绝对的URI方式对标识符出现的环境没有依赖。如果使用文件系统作类比,绝对的URI类似于从根目录开始的某个文件的径。
与绝对的URI不同的,相对的URI方式依赖于标识符出现的环境。如果用文件系统作类比,相对的URI类似于从当前目录开始的文件路径。

4,  

TCP协议和HTTP协议的关系:

TCP协议是HTTP协议的基石,HTTP协议需要依靠TCP协议来传输数据。TCP被称为“传输层协议”,而HTTP层被称为“应用层协议”,

TCP被称为“面向连接”的传输层协议,