什么是HTTP请求与响应?区别在哪

HTTP请求与HTTP响应是网络安全的基础。今天,mahui.org 带来的是什么是HTTP请求与响应?它们的区别在哪?希望对大家有所帮助。

一、HTTP协议简介

HTTP协议目前最新版为1.1,HTTP是一种无状态的协议,是指web浏览器与web服务器之间不需要要建立持久的连接,这意味着一个客户端向服务器端发出请求,然后web服务器返回响应,连接就被关闭了,在服务器端不保留连接的有关信息。也就是HTTP请求只能由客户端发起,而服务器不能主动向客户端发送数据。

HTTP遵循(Request)/应答(Response)模型,web浏览器向web服务器发送请求时,web服务器处理请求并返回适当的应答。

HTTP协议
HTTP协议

二、HTTP请求

HTTP请求包括三部分,分别是请求行(请求方法)、请求头(消息报头)和请求正文。如下案例:

POST /index.php HTTP/1.1 //请求行

HOST:  mahui.org //请求头

User-Agent:Mozilla/5.0 (Windows NT 6.1;rv:15.0)Gecko/20100101 Firefox/15.0//空白行,代表请求头结束

Username=admin&password=admin //请求正文

HTTP请求行的第一行即为请求行,请求行由三部分组成,该行的第一部分说明了该请求是POST请求,第二部分是一个斜杠(/index.php),用来说明请求的是该域名根目录下的index.php;该行的最后一部分说明使用的是HTTP1.1版本。

第二行至空白行为HTTP中的请求头(也被称为消息头)。其中,HOST代表请求的主机地址,User-Agent代表浏览器的标识。请求头由客户端自行设定。

HTTP最后一行为请求正文,请求正文是可选的,它最常出现在POST请求方法中。

三、HTTP响应

与HTTP请求对应的是HTTP响应,HTTP响应也有三部分内容组成,分别是响应行、响应头(消息报头)和响应正文(消息主题)。下面就是一个HTTP响应。

HTTP/1.1 200 OK  //响应行

Date: Thu, 28 Feb 2020 08:32:43 //响应头

Server: BWS/1.0

Content-Length:4199

Content-Type: text/html;charset=utf-8

Cache-Control:private

Expires:Thu, 28 Feb 2020 08:32:43

Content-Encoding:gzip

Set-Cookie:H_PS_PSSID=2022_1438_1944_1788;path=/;domain=. mahui.org

Connection:Keep-Alive

//空白行,代表响应头结束

<html>//响应正文或者叫消息主题

<head>

HTTP响应的第一行为响应行,其中有HTTP版本(HTTP/1.1)、状态码(200)以及消息“OK”。第二行至末尾的空白行为响应头,由服务器向客户端发送的HTML数据。消息报头之后是响应正文,是服务器向客户端发送的HTML数据。

以上就是mahui.org 带来的是什么是HTTP请求与响应?它们的区别在哪?感谢您的阅读。

mahui.org 原创文章,仅限技术研究。发布者:马会,转转请注明出处:https://mahui.org/tech/2075.html

发表评论

电子邮件地址不会被公开。 必填项已用*标注