HTTP概述 | 豆包MarsCode AI刷题

109 阅读2分钟

即使是完全没有计算机基础的小学生,也知道浏览器中网页的网址开头是http:// 。那么http到底是什么东西呢?小编也不知道,就随这节课来看看吧!

什么是http

HTTP全称Hyper Text Transfer Protocol,是分布式、协作式和超媒体信息系统的应用层超文本传输协议,是基于TCP协议的应用层协议。是适用于客户端和服务器之间通信的无状态协议,简单可拓展,且每个请求都是孤立的。
简单来说就是互联网一种传输信息的规范,客户端给服务器发出请求request,服务器返回给客户端respons,请求和响应的结构是类似的,都分为请求行,请求头,请求体/状态行,消息报头,响应正文。

请求行:请求方法(GET、POST等) URL 协议版本
请求头:客户端环境信息,请求体的大小,客户端支持的压缩类型等

请求体(可选)


状态行:协议版本 状态码 状态信息
响应头:服务器环境信息,响应体的大小,服务器支持的压缩类型等

请求体(可选)

贴两段菜鸟的示例:

GET /index.html HTTP/1.1
Host: www.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Firefox/91.0
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
Accept-Encoding: gzip, deflate
Connection: keep-alive


HTTP/1.1 200 OK
Date: Wed, 18 Apr 2024 12:00:00 GMT
Server: Apache/2.4.1 (Unix)
Last-Modified: Wed, 18 Apr 2024 11:00:00 GMT
Content-Length: 12345
Content-Type: text/html; charset=UTF-8

<!DOCTYPE html>
<html>
<head>
    <title>Example Page</title>
</head>
<body>
    <h1>Hello, World!</h1>
    <!-- The rest of the HTML content -->
</body>
</html>

下列respons中是一些常用的状态码

  • 200 OK:客户端请求成功
  • 301 :资源被永久转移到其他URL
  • 302:临时跳转
  • 401:请求未经授权
  • 404:请求资源不存在
  • 500:服务器发生错误
  • 504:服务器响应超时

常用请求头和响应头: image.png

image.png

http的发展

随着信息技术的发展,http1之后又出现了http2,把报文嵌入到帧中,更快更稳定传输的内容更多;https则可以实现加密,传送的是加密后的信息,信息传输更加安全,应用也是比较广泛的。
具体的实际应用场景分析还看不太懂,总之就是分析每条报文的含义来了解具体每条请求和响应的作用,在之后计算机网络中再进行深入学习吧!