当前位置: 首页 > news >正文

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

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

1 HTTP 头部

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

1.1 HTTP 状态码

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

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

1xx

提示信息

2xx

成功信息

  • [200 OK」
    是最常见的成功状态码,表示一切正常。
    如果是非HEAD请求,服务器返回的响应头都会有 body 数据。
  • [204 No Content」也是常见的成功状态码,与 200 OK 基本相同
    但响应头没有 body 数据。
  • [206 Partial Content」是应用于 HTTP 分块下载或断点续传,表示响应返回的 body 数据并不是资源的全部,而是其中的一部分,也是服务器处理成功的状态。
3xx

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

  • [301 Moved Permanently」表示永久重定向,说明请求的资源已经不存在了,需改用新的 URL 再次访问。
  • [302 Found」表示临时重定向,说明请求的资源还在,但暂时需要用另一个 URL 来访问
  • [304 Not Modified」不具有跳转的含义,表示资源未修改,重定向已存在的缓冲文件,也称缓存重定向,也就是告诉客户端可以继续使用缓存资源,用于缓存控制。
4xx

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

  • [400 Bad Request」表示客户端请求的报文有错误,但只是个笼统的错误。
  • [403 Forbidden」表示服务器禁止访问资源,并不是客户端的请求出错。
  • [404 Not Found」表示请求的资源在服务器上不存在或未找到,所以无法提供给客户端.。
5xx

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

  • [500 Internal Server Error」与 400 类型,是个笼统通用的错误码,服务器发生了什么错误,我们并不知道。
  • [501 Not lmplemented」表示客户端请求的功能还不支持,类似“即将开业,敬请期待”的意思。
  • [502 Bad Gateway」通常是服务器作为网关或代理时返回的错误码,表示服务器自身工作正常,访问后端服务器发生了错误。
  • [503 Service Unavailable」表示服务器当前很忙,暂时无法响应客户端,类似“网络服务正忙,请稍后重试“的意思。

1.2 HTTP 头部属性

1.2.1 请求头(Request Headers)

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

头字段英文名称示例值
请求方法MethodGET / POST / PUT / DELETE
请求资源URLRequest-URI/index.html / /api/data
协议版本HTTP VersionHTTP/1.1
客户端使用程序User-AgentMozilla/5.0 (Windows NT 10.0; Win64; x64)
服务器域名Hostwww.example.com
连接方式Connectionkeep-alive / close
接受数据格式Accepttext/html, application/json
接受压缩格式Accept-Encodinggzip, deflate, br
发送 CookieCookiesessionid=abcd1234
1.2.2 响应头(Response Headers)
头字段英文名称示例值
协议版本HTTP-VersionHTTP/1.1
状态码Status-Code200
状态信息Status-MessageOK
目标服务器Servernginx/1.18.0
数据长度Content-Length1024
数据格式Content-Typetext/html; charset=UTF-8
数据压缩方法Content-Encodinggzip
设置 CookieSet-Cookiesessionid=abcd1234; Path=/; HttpOnly

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

相关文章:

  • vue-cli工具build测试与生产包对css处理的不同
  • PDF 文本提取为何如此困难?– 原因和解决方案
  • 如何破解软件自动化测试框架的维护难题
  • 跨境电商生死存亡:AI反检测技术是否能为卖家保驾护航?
  • Ubuntu桌面环境下网络设置选项缺失问题解决
  • 在Java中集成DeepSeek的详细步骤
  • ADAS智能驾驶功能
  • 前端 VSCODE 插件开发总结 (后续将出专栏详细讲解开发的细节...)
  • 【性能优化点滴】odygrd/quill 中将 MacroMetadata 变量声明为 constexpr
  • 蓝桥杯 双子数
  • Go 语言标准库中Channels,Goroutines详细功能介绍与示例
  • 2025AWE观察:“无AI不家电”,但“AI”还是“AL”仍是个问题
  • OpenCV图像拼接(10)用于实现图像拼接过程中的时间流逝(timelapse)效果的一个类cv::detail::Timelapser
  • 【产品小白】产品视角的RAG
  • 进程状态:Linux的幕后指挥管理,穿越操作系统进程的静与动
  • 自然语言处理|高效法律助手:AI如何解析合同条款?
  • ChatBI的流程图
  • 深入探究成都国际数字影像产业园的运营模式
  • 一周掌握Flutter开发--9. 与原生交互(上)
  • Spring-boot引入nacos但未生效
  • 公司网站建设需要多少钱/今晚比分足球预测
  • 做地方旅游网站/泉州网站关键词排名
  • dede新闻网站源码带采集/企业站seo报价
  • 陕西建设机械官方网站/公司官网制作多少钱
  • 网站设计建设公司/网络营销的策略有哪些
  • 做网站游戏推广赚钱/东莞关键词优化推广