甚麽是HTTP协定?HTTP协定的工作原理是甚麽?
定论
HTTP(Hypertext Transfer Protocol)协定是一类网络协定,也是最常用的Web协定之一。其首要功效是在Web利用程序中,客人端和服务器之间传播和互换信息。
HTTP协定首要是对于客人端和服务器之间的通信进行设计的,基于客人端/服务器模型,此中客人端向服务器发送客人端恳求新闻,服务器则返回服务器呼应新闻。
HTTP协定的根本操作有“GET”,“POST”两类,分别代表从服务器上获得页面信息和向服务器提交信息。HTTP是1个无状况协定,这象征着客人端向服务器发送恳求时,服务器没有记载或保留所有客人端状况数据。每个恳求全是1个独立的事务,服务器从每个“GET”,“POST”恳求中获取所需的整个数据,接着向客人端返回呼应。
工作原理
HTTP协定的根本工作原理如下:
1、客人端向服务器发送恳求新闻,恳求新闻中含盖恳求方式、URL、协定版本以及恳求头等数据。
2、服务器接收到恳求新闻后,依据恳求新闻的URL和对应的处置逻辑,形成服务器呼应新闻,并将其发送给客人端。
3、呼应新闻中含盖协定版本、状况码、呼应头和呼应体等数据。
4、客人端接收到呼应新闻之后,会依据本身的处置方法进行处置,比如假设是网页,客人端会分析呼应体中的HTML代码并渲染出网页。
5、假设须要持续与服务器通信,客人端可以发动新的恳求,并反复上述方法。
在HTTP协定中,客人端和服务器之间不会维持持久连通,每次恳求须要从头与服务器成立连通。另外,HTTP协定是一类无状况协定,即服务器并非会保护客人端的状况数据,也就是说,每次恳求全是独立的,客人端和服务器之间没有所有状况关联。为了解决这个问题,往往会利用Cookie或Session等方法来保持状况。
状况码
HTTP协定定论了多种状况码,用来表示服务器对客人端恳求的呼应状况。下列是全部常见的HTTP状况码列表:
1xx(数据性状况码)
100 Continue
101 Switching Protocols
102 Processing
2xx(顺利状况码)
200 OK
201 Created
202 Accepted
204 No Content
207 Multi-Status
3xx(重定向状况码)
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
307 Temporary Redirect
4xx(客人端错误状况码)
400 Bad Request
401 Unauthorized
403 Forbidden
404 Not Found
405 Method Not Allowable
408 Request Time-Out
5xx(服务器错误状况码)
500 Internal Server Error
501 NotImplemented
502 Bad Gateway
503 Service Unavailable
除了上述列出的状况码外,还有许多保留的状况码,如5.5和5.6开头的状况码。在实际利用中,通常不会利用这类保留状况码。