HTTP-02

常用HTTP状态码是怎么分类的

      

常用的HTTP状态码是按照以下几个分类进行的:

  1. 1xx 信息类状态码:表示请求已被接收,需要进一步处理。

  2. 2xx 成功类状态码:表示请求已成功被服务器接收、理解和处理。

  3. 3xx 重定向类状态码:表示需要进一步的操作以完成请求。

  4. 4xx 客户端错误类状态码:表示请求包含语法错误或无法完成请求。

  5. 5xx 服务器错误类状态码:表示服务器在处理请求时发生了错误。

HTTP有哪些常见的状态码

     

HTTP协议常见的状态码有以下几种:

  1. 1xx:信息性状态码,表示请求已被接收并继续处理。

  2. 2xx:成功状态码,表示请求已成功被服务器接收、理解、并接受。

  • 200 OK:请求成功。
  • 201 Created:请求已经被实现,新的资源已经依据请求的需要而建立。
  • 204 No Content:服务器成功处理了请求,但没有返回任何内容。
  1. 3xx:重定向状态码,表示需要进一步操作以完成请求。
  • 301 Moved Permanently:永久性重定向,资源已被分配了新的URL。
  • 302 Found:暂时性重定向,资源已被分配了新的URL,但是今后还可能发生变化。
  • 304 Not Modified:客户端发送了一个带有条件的GET请求,服务器允许访问资源,但未满足条件请求。
  1. 4xx:客户端错误状态码,表示请求包含错误、无法被服务器理解或被拒绝。
  • 400 Bad Request:请求无效,服务器无法理解请求。
  • 401 Unauthorized:请求要求身份验证。
  • 404 Not Found:请求的资源不存在。
  1. 5xx:服务器错误状态码,表示服务器在处理请求时发生错误。
  • 500 Internal Server Error:服务器内部错误,无法完成请求。
  • 502 Bad Gateway:服务器作为网关或代理,从上游服务器收到无效的

 

Http协议中有那些请求方式  

    

在HTTP协议中,常用的请求方式有以下几种:

  1. GET:用于获取资源,向服务器请求指定的资源。GET请求可以包含数据在URL的查询字符串中,也可以在请求体中携带数据,但是不常使用。

  2. POST:用于提交数据,向服务器提交数据,请求服务器使用请求体中的数据执行特定的操作。

  3. PUT:用于更新资源,向服务器发送数据更新指定的资源,如果资源不存在,则会创建新的资源。

  4. DELETE:用于删除资源,向服务器发送请求删除指定的资源。

  5. HEAD:类似于GET请求,但只返回响应状态行和头部信息,不返回响应体。

  6. OPTIONS:用于获取服务器支持的HTTP方法。

  7. PATCH:用于更新资源的部分内容,向服务器发送数据更新指定的资源的部分内容。

  8. TRACE:用于追踪请求-响应的路径。

  9. CONNECT:用于与代理服务器建立隧道。

GET方法与POST方法的区别

     

GET方法和POST方法是HTTP协议中常用的两种请求方法,它们在以下几个方面有所不同:

  1. 数据传输方式:GET方法将请求参数附加在URL后面,以问号(?)分隔,参数之间用&连接。而POST方法则将请求参数放在请求体中,不会显示在URL中。

  2. 安全性:GET方法的请求参数可以直接在URL中看到,因此不适合传输敏感信息,例如密码等。而POST方法的请求参数放在请求体中,不会直接暴露在URL中,因此相对安全。

  3. 数据长度限制:由于GET方法的请求参数直接附加在URL后面,URL长度有限制,通常为2K字符。而POST方法将请求参数放在请求体中,没有长度限制。

  4. 缓存:GET方法的请求结果可以被缓存,因为请求是幂等的,即相同的请求总是返回相同的结果。而POST方法的请求结果通常不会被缓存,因为请求可能有副作用,例如创建或修改资源。

  5. 幂等性:GET方法是幂等的,即同一个请求可以多次执行而不会产生不同的效果。而POST方法通常不是幂等的,即多次执行同一个请求可能会产生不同的效果,例如创建多个资源。

http版本的对比  

    

以下是HTTP版本的简要对比:

  1. HTTP/1.0:
  • HTTP/1.0是最早的HTTP协议版本。
  • 它使用短连接,每次请求都需要建立新的TCP连接。
  • 不支持请求头的Host字段,因此无法在同一台服务器上请求多个网站。
  • 不支持持久连接和流水线,每次请求-响应都需要等待前一个请求-响应完成。
  1. HTTP/1.1:
  • HTTP/1.1是HTTP/1.0的改进版本。
  • 引入了持久连接和流水线技术,可以在同一TCP连接上发送多个请求和响应,减少了建立连接的开销。
  • 引入了请求头的Host字段,使得在同一台服务器上请求多个网站成为可能。
  • 支持分块传输编码(Chunked Transfer Encoding),可以实现边下载边解压缩。
  • 支持断点续传。
  1. HTTP/2:
  • HTTP/2是HTTP/1.1的进一步改进版本。
  • 引入了二进制分帧层,将HTTP消息分解为多个帧,并交错发送,提高了并发性能。
  • 支持头部压缩,减少了数据传输量。
  • 支持服务器主动推送(Server Push),服务器可以在客户端请求之前主动推送相关资源。
  • 支持流的优先级,可以调整并发请求的优先级。
  • 使用单一的TCP连接,减少了连接的建立和关闭的开销。

总结

     

HTTP(Hypertext Transfer Protocol)是一种用于传输超文本的应用层协议。在进行HTTP通信时,客户端向服务器发送请求,服务器根据请求返回相应的状态码。下面是关于HTTP状态码和分类以及请求方式的总结。

  1. HTTP状态码:
  • 1xx:信息性状态码,表示请求已被接收并继续处理。
  • 2xx:成功状态码,表示请求被成功接收、理解和处理。
  • 3xx:重定向状态码,表示需要采取进一步的操作来完成请求。
  • 4xx:客户端错误状态码,表示服务器无法处理请求。
  • 5xx:服务器错误状态码,表示服务器处理请求时发生错误。
  1. HTTP状态码分类:
  • 1xx:100 Continue, 101 Switching Protocols等。
  • 2xx:200 OK,201 Created,204 No Content等。
  • 3xx:301 Moved Permanently,302 Found,304 Not Modified等。
  • 4xx:400 Bad Request,403 Forbidden,404 Not Found等。
  • 5xx:500 Internal Server Error,503 Service Unavailable等。
  1. HTTP请求方式:
  • GET:用于请求获取资源,对服务器数据没有影响,常用于获取数据。
  • POST:用于向服务器提交数据,对服务器数据有影响,常用于发送表单数据。
  • PUT:用于向服务器上传数据,对服务器数据有影响,常用于更新资源。
  • DELETE:用于删除服务器上的资源,对服务器数据有影响。
  • HEAD:类似于GET请求,只返回响应头信息,不返回实体主体。
  • OPTIONS:用于获取目标URL所支持的通信选项。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/748469.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

你的生日是星期几?HTML+JavaScript帮你列出来

0 源起 上周末,大宝发现今年自己的生日不是周末,这样就不好约同学和好友一起开生日Party了,很是郁闷。一直嘀咕自己哪年的生日才是周末。 于是我用JavaScript写了一个小程序来帮她测算了未来100年中每年的生日分别是星期几。 1 设计交互界面…

RabbitMQ的Direct交换机

Direct交换机 BindingKey 在Fanout模式中,一条消息,会被所有订阅的队列都消费。但是,在某些场景下,我们希望不同的消息被不同的队列消费。这时就要用到Direct类型的Exchange。 在Direct模型下: 队列与交换机的绑定&a…

DDoS攻击的最新防御策略:从检测到缓解的全方位方案

在数字化浪潮的推动下,互联网已成为现代社会的血脉。然而,随着网络空间的不断膨胀,分布式拒绝服务(DDoS)攻击如同潜伏在暗处的猛兽,随时准备发动致命一击,威胁着网络的稳定与安全。面对这一严峻…

08 元组和集合

目录 一、元组(tuple) 1. 什么是元组 2. 查操作 3. 函数和方法 二、集合(set) 1. 什么是集合 2. 数学集合运算 一、元组(tuple) 1. 什么是元组 元组是容器型数据类型,将( )作为容器的标…

RabbitMQ入门基础篇

文章目录 安装 / 部署 RabbitMQ快速入门消息发送消息接收 WorkQueues模型消息发送消息接收能者多劳总结 交换机类型Fanout交换机声明队列和交换机绑定队列到交换机消息发送消息接收总结 Direct交换机声明队列和交换机为队列绑定相应的key消息接收消息发送 Topic交换机绑定队列消…

类与对象(1)

1.c升级了类 C 语言结构体中只能定义变量,在 C 中,结构体内不仅可以定义变量,也可以定义函数。 比如: 之前在数据结构初阶中,用 C 语言方式实现的栈,结构体中只能定义变量 ;现在以 C 方式实现&…

什么样的台灯适合学生使用?五款暑假必入护眼大路灯分享

什么样的台灯适合学生使用?现在近视越来越低龄化,戴眼镜的小朋友越来越多,每每看着自己孩子眼睛贴到作业本上写作业,我的心都会提到嗓子眼。去医院一检查,果然,远视储备即将告罄,必须要防护了&a…

1500平方米气膜羽毛球馆的造价分析—轻空间

随着全民健身热潮的兴起,气膜羽毛球馆因其良好的空气质量、恒温恒湿的环境和快捷的建设速度,受到了越来越多人的欢迎。建造一个1500平方米的气膜羽毛球馆涉及多个方面的费用,包括场地准备、设备材料、安装施工、配套设施等。轻空间将详细分析…

企业微信内嵌H5项目接入聊天功能

产品需求是,在列表中把符合条件的列表接入聊天功能,以下是详细步骤: 1.引入企业微信 <script src"https://res.wx.qq.com/wwopen/js/jsapi/jweixin-1.0.0.js"></script> 2.获取wx签名(必须要) /*** 获取wx签名**/ export function getWxJsApi(data) {r…

DC/AC电源模块:效率与可靠性兼备的能源转换解决方案

BOSHIDA DC/AC电源模块&#xff1a;效率与可靠性兼备的能源转换解决方案 随着科技的迅速发展和人工智能技术的逐渐成熟&#xff0c;各种电子设备的需求也日益增加。然而&#xff0c;这些设备往往需要不同的电压和电流来正常工作&#xff0c;而供电方式却可能不尽相同。这时&am…

前端框架中的前端打包(Bundling)和前端构建工具(Build Tools)的作用

聚沙成塔每天进步一点点 本文回顾 ⭐ 专栏简介前端框架中的前端打包&#xff08;Bundling&#xff09;和前端构建工具&#xff08;Build Tools&#xff09;的作用1. 引言2. 前端打包&#xff08;Bundling&#xff09;2.1 概述2.2 常见的打包工具2.2.1 Webpack2.2.2 Parcel 2.3 …

ERP收费模式是怎样的?SAP ERP是如何收费的?

一、购置SAP ERP系统的费用组成 1、软件费用 传统的ERP系统大多为许可式&#xff0c;即企业在购买ERP服务时付清所有费用&#xff0c;将ERP系统部署于自己的服务器中。根据所购买ERP系统品牌的不同&#xff0c;价格上也有一定的差异。采购ERP系统许可后&#xff0c;后续维护、…

springboot医院门诊挂号系统-计算机毕业设计源码033123

目 录 摘要 1 绪论 1.1研究背景及意义 1.2研究现状 1.3系统开发技术的特色 1.4论文结构与章节安排 2 医院门诊挂号系统系统分析 2.1 可行性分析 2.2 系统流程分析 2.2.1数据增加流程 2.3.2数据修改流程 2.3.3数据删除流程 2.3 系统功能分析 2.3.1 功能性分析 2.…

模拟题解析:

《互联网域名管理办法》第41条规定&#xff0c;域名根服务器运行机构、域名注册管理机构和域名注册服务机构应当遵守国家相关法律、法规和标准&#xff0c;落实网络与信息安全保障措施&#xff0c;配置必要的网络通信应急设备&#xff0c;建立健全网络与信息安全监测技术手段和…

3D渲染时如何提高GPU的使用率?这7点告诉你

GPU 正逐渐取代 CPU 在 3D 渲染中的地位。我们看到许多 GPU 渲染器如 Redshift、Octane、FStorm 等不断推出。以前只支持 CPU 渲染的渲染器&#xff0c;如 Arnold、V-Ray、Renderman、Keyshot 等&#xff0c;现在也开始支持 GPU 渲染。实时渲染的发展使 GPU 更受欢迎&#xff0…

V-Series Avalon-MM DMA Interface for PCIE IP核

目录 1. IP概述 2. Avalon-MM DMA Ports 3. 参数设置 3.1 系统设置 3.2 基址寄存器 (BAR) 设置 3.3 设备识别寄存器 3.4 PCI Express和PCI功能参数 3.4.1 Device Capabilities 3.4.2 Error Reporting 3.4.3 Link Capabilities 3.4.4 MSI and MSI-X Capabilities …

【MySQL进阶之路 | 高级篇】索引及索引的数据结构

1. 为什么要使用索引 索引是存储引擎用于快速找到数据记录的一种数据结构&#xff0c;就好比一本教科书的目录&#xff0c;通过目录可以找到对应文章的页面&#xff0c;而不用一页一页从头翻到尾.MySQL也是一样的道理.在进行数据查找时&#xff0c;首先查看查询条件是否命中某…

基于weixin小程序校园快递系统的设计

管理员账户功能包括&#xff1a;系统首页&#xff0c;个人中心&#xff0c;管理员管理&#xff0c;用户管理&#xff0c;订单管理&#xff0c;快递管理&#xff0c;快递记录管理&#xff0c;公告管理&#xff0c;基础数据管理 小程序功能包括&#xff1a;系统首页&#xff0c;…

Java毕设代码助力,让技术实现更流畅

Java毕设代码助力&#xff0c;让技术实现更流畅 在Java毕业设计的道路上&#xff0c;代码的编写往往占据了大部分的时间和精力。为了帮助同学们更专注于项目的核心逻辑和创意实现&#xff0c;Java毕设服务工作室专注于提供高质量的Java代码支持。 一、专业编码&#xff0c;助…

python-引用配置文件和日志

文章目录 前言python-引用配置文件和日志1. 给一个配置文件2. 获取配置文件信息方法3. 获取配置信息&#xff0c;引入日志分页功能demo4. 测试 前言 如果您觉得有用的话&#xff0c;记得给博主点个赞&#xff0c;评论&#xff0c;收藏一键三连啊&#xff0c;写作不易啊^ _ ^。 …