第222天学习打卡(知识点回顾 Http)
Posted doudoutj
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第222天学习打卡(知识点回顾 Http)相关的知识,希望对你有一定的参考价值。
HTTP
Web的应用层协议是超文本传输协议(HyperText Transfer Protocol ,HTTP),它是Web 的核心,在[RFC 1945]和[RFC 2616]中进行了定义。HTTP由两个程序实现:一个客户程序和一个服务器程序。客户程序和服务器程序运行在不同的端系统中,通过交换HTTP报文进行会话。HTTP定义了这些报文的结构以及客户和服务器进行报文交换的方式。
Web 页面(Web page)(也叫文档)是由对象组成的。一个对象(object)只是一个文件,诸如一个html文件、一个JPEG图形、一个Java小程序或一个视频片段的文件,且它们通过一个URL地址寻址。多数Web页面含有一个HTML基本文件(base HTML file)以及几个引用对象。
Web浏览器实现了Http的客户端,所以在Web环境中我们经常交替使用“浏览器”和“客户”这两个术语。Web服务器实现了Http的服务器端,它用于存储Web对象,每个对象由URL寻址。流行的Web服务器有Apache 和 Microsoft Internet Information Server(微软互联网信息服务器)。
Http定义了Web客户向Web服务器请求Web页面的方式,以及服务器向客户传送Web页面的方式。当用户请求一个Web页面(如点击一个超链接)时,浏览器向服务器发出对该页面中所包含对象的HTTP请求报文,服务器接收到请求并用包含这些对象的HTTP响应报文进行响应。
Http使用TCP作为它的支撑运输协议(不是在UDP上运行)。HTTP客户首先发起一个与服务器的TCP连接。一旦连接建立,该浏览器和服务器进程就可以通过套接字接口访问TCP。
==注意:==服务器向客户发送请求的文件,而不存储任何关于该客户的状态信息。假如某个特定的客户在短短的几秒中内两次请求同一个对象,服务器并不会因为刚刚为该客户提供了该对象就不再做出反应,而是重新发送该对象,就像服务器完全忘记了不久之前所做过的事情一样。因为HTTP服务器并不保存关于客户的任何信息,所以说HTTP是一个无状态协议。同时也注意到Web使用了客户-服务器应用程序的体系结构。Web服务器总是打开的,具有一个固定的IP地址,且它服务于可能来自数以百万计的不同请求。
非持续连接和持续连接
在许多因特网应用程序中,客户和服务器在一个相当长的时间范围内通信,其中客户发出一系列请求并且服务器对每一个请求进行响应。依据应用程序以及该应用程序的使用方式,这一系列请求可以以规则的间隔周期性的或者间断性的一个接一个发出。当这种客户-服务器的交互是经TCP进行的,应用程序的研制者就需要做一个重要决定,即每个请求/响应对是经一个单独的TCP连接发送,还是所有的请求及其响应经相同的TCP连接发送? 采用前一种方法,该应用程序被称为使用非持续连接,采用后一种方法,该应用程序称为使用持续连接。
----《计算机网络:自顶向下方法》
以上是关于第222天学习打卡(知识点回顾 Http)的主要内容,如果未能解决你的问题,请参考以下文章