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

HTTP状态码

HTTP(Hypertext Transfer Protocal)超文本传输协议。是一种详细规定了客户端浏览器和万维网服务器之间相互通讯的规则,通过因特网传送万维网文档的数据传送协议。

HTTP的请求响应模型:

HTTP协议永远都是客户端发起请求,服务器回送响应。如下图所示:

这样就限制了使用HTTP协议,无法实现在客户端没有发起请求的时候,服务器将消息推送给客户端。

HTTP协议是一个无状态的协议,同一个客户端的这次请求和上次请求是没有对应关系。

工作流程:

一次HTTP操作称为一个事务,其工作过程分为四步:

  • 首先客户机与服务器需要建立连接。只要单击某个超级链接,HTTP的工作开始。
  • 建立连接后,客户机发送一个请求给服务器,请求方式的格式为:统一资源标识符(URL)、协议版本号,后边是MIME信息包括请求修饰符、客户机信息和可能的内容。
  • 服务器接到请求后,给予相应的响应信息,其格式为一个状态行,包括信息的协议版本号、一个成功或错误的代码,后边是MIME信息包括服务器信息、实体信息和可能的内容。
  • 客户端接收服务器返回的信息通过浏览器显示在用户的显示屏上,然后客户机与服务器断开连接。

如果在以上过程中的某一步出现错误,那么产生错误的信息将返回到客户端,有显示屏输出。对于用户来说,这些过程是由HTTP自己完成的,用户只要用鼠标点击,等待信息显示就可以了。

常见的状态码:

1xx:

100 客户端必须继续发出请求

101 客户端要求服务器根据请求转换HTTP协议版本

2xx:

200 交易成功

201 提示知道新文件的URL

202 接受和处理、但处理未完成

203 返回信息不确定或不完整

204 请求收到,但返回信息为空

205 服务器完成了请求,用户代理必须复位当前已经浏览过的文件

206 服务器已经完成了部分用户的GET请求

3xx:

300 请求的资源可在多处得到

303 建议客户端访问其他URL或访问方式

4xx:

400 错误请求,如语法错误

401 未授权

402 保留有效Charge To头响应

403 禁止访问

404 没有发现文件、查询或URL

5xx:

500 内部服务器错误

501 未实现

502 网关错误

HTTP状态保持

HTTP协议本身是无状态的,这与HTTP协议本来目的是相符的,客户端只需要简单的向服务器请求下载某些文件,无论客户端还是服务端都没有必要记录彼此过去的行为,每一次请求之间都是独立的。cookie的作用就是为了解决HTTP协议无状态的缺陷所作出的努力。后来出现的session机制则是一种在客户端与服务器之间保持状态的解决方案。

Cookie与Session之间的区别

  • Cookie将状态保存在客户端,Session将状态保存在服务器端;
  • Cookie是服务器在本地机器上存储的小段文本并随每一个请求发送至同一个服务器。
  • Session是针对每一个用户的,变量的值保存在服务器上,用一个sessionID来区分是哪一个用户session变量,这个值是通过用户的浏览器在访问的时候返回给服务器,当客户禁用cookie时,这个值也可能设置为由get来返回给服务器;

http://www.cnnetsun.cn/news/22574.html

相关文章:

  • Google Apps Script OAuth2 库完整指南:轻松实现第三方服务集成
  • PySceneDetect完整指南:零基础掌握视频智能分割技术
  • 24、结合psad和fwsnort保障网络安全
  • 32、网络攻击欺骗与 fwsnort 脚本详解
  • 师生交流论坛|基于springboot + vue师生交流论坛系统(源码+数据库+文档)
  • 二手商城|基于springboot + vue二手商城系统(源码+数据库+文档)
  • 20、帧缓冲区接口设计与 STBmenu 简易 UI 开发
  • 24、深入浅出:SNMP 实践指南
  • 高级前端 Input 公共组件设计方案(Vue3 + TypeScript)
  • 前后端HTTPS及证书配置完整流程
  • TIA博途虚拟机终极配置指南:V17+V16+V15.1全版本一键部署
  • 【开题答辩全过程】以 基于Java的人体骨骼健康知识普及系统为例,包含答辩的问题和答案
  • 企业微信开发总卡壳?试试cpolar,回调调试超顺畅
  • ChatPPT:国内综合实力最强的AI PPT工具
  • 测试经验,自动化测试的痛点+发展趋势,一篇带你上高速...
  • NetGuard实战指南:告别流量焦虑,让Android网络管理如此简单
  • 大厂已经不用人干活了?“AI中台+Agent”正在重塑商业规则
  • Qwen2.5-Omni全模态大模型:70亿参数重构人机交互范式
  • Morisawa BIZ UDGothic 字体使用指南:让文字表达更专业优雅
  • 量子化学:材料的电子态密度
  • 零基础也能做!用Qoder快速开发“技能五子棋”蹭热点项目
  • GitHub加速终极方案:告别龟速访问,体验丝滑编程
  • 【总结】【计组】【OS】页号、页框号、虚拟地址、物理地址、地址
  • 超细整理,性能测试如何做?怎么做?性能压力负载(汇总三)
  • 国外代理IP怎么选?4大标准帮你避坑选优
  • 艾体宝洞察 | 当供应链恶意代码会“二次来袭”:Shai-Hulud 事件下,为什么必须重新审视你的应用安全体系?
  • OpenHarmony环境搭建——02-JDK17安装教程
  • 艾体宝干货 |【Redis实用技巧#4】Redis分布式锁真的安全吗?可靠性深度剖析(Part 2)
  • 21-4. PLC的基本逻辑指令(置位,复位指令)
  • VueScan Pro:专业扫描仪增强软件,支持多品牌设备与高质量OCR识别