介绍
HTTP(Hypertext Transfer Protocol,超文本传输协议)是一种用于传输超文本(如HTML)的应用层协议。它是在Web应用中最常用的协议,用于在客户端和服务器之间传输数据。
为什么需要这个协议
我们日常交流中也有某些规则,帮助我们理解并更好的交流。那么在计算机交流中也是这样,我们需要遵守的规则有:
1.明确的边界
2.数据流携带信息的类型(图片;视频或是超链接)
常见协议内容
GET /index.html HTTP/1.1 //请求行
Host: www.example.com //请求头部
User-Agent: Mozilla/5.0
这是请求部分的内容,其中:GET是请求方法;1.1是HTTP协议版本;index.html HTTP是请求的URL;最后Host和User-Agent都是请求头部,用于传递请求的附加信息
HTTP/1.1 200 OK //状态行
Content-Type: text/html //响应头部
Content-Length: 1024
//空行用于分隔响应头部和响应体
<!DOCTYPE html> //响应体
<html>
<head>
<title>Example Page</title>
</head>
<body>
<h1>Hello, World!</h1>
</body>
</html>
这是响应部分的内容,其中:HTTP是协议版本;200是状态码;OK是状态描述,而这里的响应体包含了一个HTML文档,文档包含一个标题为Example Page页面和Hello, World!。
简单的流程
客户端发送一个HTTP请求到服务器,请求包括要访问的资源的URL、请求方法(GET、POST等)和其他可选的请求头部。 服务器接收到请求后,根据请求的URL和方法,处理请求并生成相应的HTTP响应。 服务器将生成的HTTP响应发送回客户端,响应包括状态码、响应头部和响应体。 客户端接收到响应后,根据响应的状态码和响应头部进行处理,从响应体中获取所需的数据。