今天给大家主要介绍HTTP协议的基本原理,本文主要内容是HTTP协议简介、统一资源标识符URI和HTTP1.0版本和1.1版本的区别。
一、HTTP协议简介
HTTP协议,即Hyper Text Transfer Protocol,超文本传输协议的简称,是目前互联网上所广泛使用的一种网络协议,当前所有的WWW服务器都是使用该协议。
HTTP协议为应用层协议,建立在TCP协议之上。HTTP协议是一种典型的C/S架构的协议,其中WWW服务器为HTTP的服务端,用户所使用的浏览器为客户端。用户在访问网页时,会随机使用一个端口,访问服务端的指定端口(默认是80),经过TCP三次握手后,建立HTTP链接。
二、统一资源标识符URI
我们使用同意资源标识符来(Unique Resource Identifier,URIne)标识唯一标识一个网络资源,URI又可以细分为URL和URN。其中,URL为统一资源定位符,Unique Resource Locator,URN为统一资源命名符,Unique Resource Name。URI、URL和URI的关系如下图所示:
目前,URL的使用较为普遍,完整的URL格式为:
protocol://Domain:Port/Path/…/[?QueryString][#Anchor]
protocol为URL的协议,可以是http、ftp等,Domain为主机域名,也可以是IP地址,Port为服务端端口号,默认为80,Path为目标资源在服务端的路径,QueryString为通过GET方式传递给服务器的参数,Anchor为锚点。锚点即一个定位点,如果一个web页面过长时,通过锚点可以快速跳转到锚定位置。
三、HTTP1.1与HTTP1.0区别
HTTP1.0与HTTP1.1版本有着很大的区别,其中最主要的方面是HTTP1.1采用了长链接结束。不论是在HTTP1.0还是在HTTP1.1版本中,HTTP协议都会封装在TCP链接中,在完成TCP三次握手后,即可发送HTTP链接。但是,在HTTP1.0版本中,每个TCP链接只能有一次HTTP的请求和响应。因此,如果客户端要多次访问服务器,那么客户端必须每次发起TCP三次握手的过程,极大的浪费了带宽资源。而在HTTP1.1中,由于采用了长链接技术,在一个TCP链接中,客户端和服务端可以多次发起请求和响应。
当然,HTTP1.1和HTTP1.0版本的区别不仅仅在于长链接上,HTTP1.1增加了更多的请求头和响应头,增加了更多的状态码,增加了缓存处理等机制。
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_40228200/article/details/121778734