【网络协议】【http】http 简单介绍

【网络协议】【http】http 简单介绍

1 HTTP 头部

HTTP 是一种请求-响应协议,客户端向服务器发送请求,服务器返回响应。

1.1 HTTP 状态码

状态码是服务器返回给客户端三位数字代码 ,用于表示请求的执行结果。

状态码按照首位数字分类:

类别 范围 描述
1xx 100-199 信息性状态码(Informational),表示请求已接收,服务器继续处理
2xx 200-299 成功状态码(Success),表示请求被成功处理
3xx 300-399 重定向状态码(Redirection),需要客户端采取进一步操作
4xx 400-499 客户端错误(Client Error),表示请求有错误
5xx 500-599 服务器错误(Server Error),表示服务器无法处理请求

1xx

提示信息

2xx

成功信息

  • 200 OK」 是最常见的成功状态码,表示一切正常。 如果是非HEAD请求,服务器返回的响应头都会有 body 数据。

    但响应头没有 body 数据。
  • 206 Partial Content」是应用于 HTTP 分块下载或断点续传,表示响应返回的 body 数据并不是资源的全部,而是其中的一部分,也是服务器处理成功的状态。

重定向,状态码表示客户端请求的资源发生了变动,需要客户端用新的 URL 重新发送请求获取资源

  • 301 Moved Permanently」表示永久重定向,说明请求的资源已经不存在了,需改用新的 URL 再次访问。

  • 304 Not Modified」不具有跳转的含义,表示资源未修改,重定向已存在的缓冲文件,也称**缓存重定向**,也就是告诉客户端可以继续使用缓存资源,用于缓存控制。

客户端 发送的报文有误,服务器无法处理,也就是错误码的含义。

  • 400 Bad Request」表示客户端请求的报文有错误,但只是个笼统的错误。

  • 404 Not Found」表示请求的**资源在服务器上不存在或未找到**,所以无法提供给客户端.。

客户端请求报文正确,但是服务器处理时内部发生了错误,属于服务器端的错误码。

  • 500 Internal Server Error」与 400 类型,是个笼统通用的错误码,服务器发生了什么错误,我们并不知道。

  • 502 Bad Gateway」通常是服务器作为网关或代理时返回的错误码,表示服务器自身工作正常,访问后端服务器发生了错误。

1.2 HTTP 头部属性

1.2.1 请求头(Request Headers)

请求头包含客户端发送给服务器的元信息,例如请求方法、资源路径、客户端信息等。

头字段 英文名称 示例值
请求方法 Method GET / POST / PUT / DELETE
请求资源URL Request-URI /index.html / /api/data
协议版本 HTTP Version HTTP/1.1
客户端使用程序 User-Agent Mozilla/5.0 (Windows NT 10.0; Win64; x64)
服务器域名 Host www.example.com
连接方式 Connection keep-alive / close
接受数据格式 Accept text/html, application/json
接受压缩格式 Accept-Encoding gzip, deflate, br
发送 Cookie Cookie sessionid=abcd1234
... ... ...
1.2.2 响应头(Response Headers)
头字段 英文名称 示例值
协议版本 HTTP-Version HTTP/1.1
状态码 Status-Code 200
状态信息 Status-Message OK
目标服务器 Server nginx/1.18.0
数据长度 Content-Length 1024
数据格式 Content-Type text/html; charset=UTF-8
数据压缩方法 Content-Encoding gzip
设置 Cookie Set-Cookie sessionid=abcd1234; Path=/; HttpOnly
... ... ...

后续会写一下 http 1.0 1.1 2 3 如果有时间的话

相关推荐
爱写代码的小朋友9 分钟前
IP 地址规划中的子网划分:/18 网络容纳 64 个 C 段(/24)的原理与应用解析
网络·网络协议·tcp/ip
十五年专注C++开发36 分钟前
WebSocket原理详解(二)
网络·websocket·网络协议
JhonKI1 小时前
从零实现Json-Rpc框架】- 项目实现 - 服务端registry&discovery实现
网络协议·rpc·json
蜗牛沐雨2 小时前
MCP协议的Streamable HTTP:革新数据传输的未来
网络·网络协议·http
金丝猴也是猿2 小时前
如何在Flutter上实现高性能的动态模板渲染
websocket·网络协议·tcp/ip·http·网络安全·https·udp
swift开发pk OC开发2 小时前
Flutter性能优化细节
websocket·网络协议·tcp/ip·http·网络安全·https·udp
网络抓包与爬虫2 小时前
Flutter 环境搭建、常用指令、开发细节
websocket·网络协议·tcp/ip·http·网络安全·https·udp
louisgeek2 小时前
MQTT 消息队列遥测传输
网络协议
春生黎至10053 小时前
GZ073网络系统管理赛项赛题第1套模块A:网络构建解题笔记
运维·网络
yyytucj3 小时前
ES 查看索引的属性的http请求
http