丁鹿学堂:前端http面试总结,状态码详解

http请求方法总结

get: 从服务器获取资源

post:在服务器创建资源

put:在服务器修改资源

delete:在服务器删除资源

注意:

post和put的最大区别,在于put具有幂等性。比如你调用post10次,他会创造10个资源,在服务器产生的影响是不一样的。

而put,调用10次,只要请求是一样的,那么他在服务器产生的影响是一样的。

http状态码详解

1xx:提供信息,101 协议切换,

2xx:成功

200:ok,get请求成功返回

201Lcreated已创建,通常post请求会返回

202 请求已经收到,比如创建订单,在服务端的开销比较大,一些异步请求会先返回202表示已经接收到请求。

203 非权威内容,表示原始服务器的内容在中间被修改过,比如中间有代替服务器

204:没有内容返回,常见的put操作,内容修改成功但是没有内容返回。

205:重置内容,比如用户在输入一个大的表单,服务器拿走了,但是希望前端重置一下,方便用户输入新的内容

206:服务端下发部分内容

3xx:重定向

301 永久转移,比如一些老网址的内容永久转移到新的网址上

303: see other 可以使用get方法在另一个url找到资源

304:没有修改,缓存。如果请求的内容没有变,web服务会返回一个304给浏览器,同时不会把资源真的返回,浏览器用缓存去展示。

305:需要代理。

307:临时重定向

308:永久重定向

面试题:301和308都是永久重定向,他们的差别?

共同点:资源被永久移动到新的地址

差异:客户端收到308请求后,之前是什么方法,那么之后也会沿用这个方法去请求新的地址。

而客户端收到301请求,不管之前是什么方法,统一会使用get去请求新的地址。

4xx:客户端错误,404访问资源不存在

400 请求格式错误

401:没有授权,基本会跳登录

402:请先付费,比如访问一些付费资源(基本没有人使用)

403:禁止访问

404:没有找到资源

405方法不被允许

406:服务端可以提供的内容和客户端期待的不一样,比如编码格式不同

5xx:服务端错误

500 内部服务器错误

501:没有实现,比如某个接口存在,但是后端没有实现

502:网关错误

503:服务不可用

504:网关超时

505:版本不支持。比如http的协议版本

注意:规范如此,但是多数服务端开发已经不遵循状态码,成功基本都是返回200,语义用返回的字段去定义。而错误基本都会返回400

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

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

相关文章

Unity升级后打包AssetBundle变慢

1)Unity升级后打包AssetBundle变慢 ​2)打包使有些资源合成了一个资源data.unity3d,有些分开的原因 3)Unreal在移动设备中无法使用Stat命令获取到GPU Thread的耗时 4)Unity中如何看到相机视野范围内的剔除结果 这是第3…

【C++】迭代器

内容来自《C Primer(第5版)》9.2.1 迭代器、9.2.3 begin和end成员、9.3.6 容器操作可能使迭代器失效、10.4.3 反向迭代器 目录 1. 迭代器 1.1 迭代器范围 1.2 使用左闭合范围蕴含的编程假定 2. begin和end成员 3. 容器操作可能使迭代器失效 3.1 编…

【SQL基础笔记】

本文标签: SQL语法 SQL分类 DDL DML DQL DCL 目录 一、SQL语法 二、SQL的分类 三、DDL 1.DDL-数据库操作 2.DDL-表操作 3.DDL-数据类型 4.DDL-表操作 四、DML 五、DQL 1.DQL-基本查询 2.DQL-条件查询: 3.DQL-聚合函数 4.DQL-分组查询 5.DQL-排序查询 6.DQL-分页查询 7.综合案…

让ChatGPT在中断回答的时候自动输入「请接上文继续」并发送

一、脚本内容 让ChatGPT在中断回答的时候自动输入「请接上文继续」并发送 // UserScript // name ChatGPT自动接上文继续 // namespace http://tampermonkey.net/ // version 1.3 // description 让ChatGPT在中断回答的时候自动输入「请接上文继续」并发送 /…

Elasticsearch:高级数据类型介绍

在我之前的文章 “Elasticsearch:一些有趣的数据类型”,我已经介绍了一下很有趣的数据类型。在今天的文章中,我再进一步介绍一下高级的数据类型,虽然这里的数据类型可能和之前的一些数据类型有所重复。即便如此,我希望…

MySQL数据同步ES的常用思路和方法

文章目录 1.同步双写2.异步双写3.定时任务4.数据订阅大家应该都在各种电商网站检索过商品,检索商品一般都是通过什么实现呢?搜索引擎Elasticsearch。 那么问题来了,商品上架,数据一般写入到MySQL的数据库中,那么用于检索的数据又是怎么同步到Elasticsearch的呢? 1.同步双…

认识Spring(下)

作者:~小明学编程 文章专栏:Spring框架 格言:热爱编程的,终将被编程所厚爱。 目录 Spring更加高效的读取和存储对象 存储bean对象 五大注解 关于五大类注解 对象的注入 属性注入 构造方法注入 Setter注入 三种注入方式的…

IPV6 资料收集

IPV6与IPV4区别 1、地址长度的区别:IPv4协议具有32位(4字节)地址长度;IPv6协议具有128位(16字节)地址长度。 2、地址的表示方法区别:IPv4地址是以小数表示的二进制数。 IPv6地址是以十六进制表…

4.1 读写不同数据源的数据

4.1 读写不同数据源的数据4.1.1 读写数据库数据1、数据库数据获取2、数据库数据存储4.1.2 读写文本文件1、文本文件读取2、文本文件存储4.1.3 读写Excel文件1、Excel文件读取2、Excel文件存储完整代码4.1.1 读写数据库数据 1、数据库数据获取 pandas提供了读取与存储关系型数…

为什么说网络安全行业是 IT 行业最后的红利?

一、为什么选择网络安全? 这几年随着我国《国家网络空间安全战略》《网络安全法》《网络安全等级保护 2.0》等一系列政策/法规/标准的持续落地,网络安全行业地位、薪资随之水涨船高。 未来 3-5 年,是安全行业的黄金发展期,提前踏…

Android OKHttp源码解析

Https是Http协议加上下一层的SSL/TSL协议组成的,TSL是SSL的后继版本,差别很小,可以理解为一个东西。进行Https连接时,会先进行TSL的握手,完成证书认证操作,产生对称加密的公钥、加密套件等参数。之后就可以…

jenkins打包发布前端项目

1.配置前端nodejs打包环境 1.1安装nodejs插件 1.2配置jenkins nodejs环境 2.下载git插件(使用此插件配置通过gitlab标签拉取项目) 3.创建一个自由风格的发布项目 4.配置项目构建流程 4.1添加钉钉告警 4.2配置参数化构建 4.3配置源码管理为git拉取项目 4.4配置构建环境 4.5配置…

Graphic Game(思维 + 模拟删点)

C-Graphic Game_2022年江西省大学生程序设计竞赛(正式赛) (nowcoder.com) Topic describes eightCirno被推荐了一个游戏,她决定今天和Daiyousei一起玩。最初,有一个具有2 n个顶点和m条边的图。在每一个转弯,Cirno和Da…

SpringBoot+Shiro框架整合实现前后端分离的权限管理基础Demo

记录一下使用SpringBoot集成Shiro框架实现前后端分离Web项目的过程,后端使用SpringBoot整合Shiro,前端使用vueelementUI,达到前后端使用token来进行交互的应用,这种方式通常叫做无状态,后端只需要使用Shiro框架根据前端…

【云原生进阶之容器】第五章容器运行时5.4--容器运行时之Firecracker

1 Firecracker诞生背景 近些年 AWS 非常推崇无服务器模式

用Cmake构建第一个C++项目

ps:由于工作需求,需要涉及到跨平台。 概念 Cmake是一个款平台的构建工具,可以自动生成各种不同平台和编译器的构建脚本,使得项目在不同平台和编译器下都能够正常构建和运行。 CMake有自己的一套语法,需要学习CMake的…

上海亚商投顾:两市成交创年内新高 人工智能再爆发

上海亚商投顾前言:无惧大盘涨跌,解密龙虎榜资金,跟踪一线游资和机构资金动向,识别短期热点和强势个股。 市场情绪三大指数今日高开高走,沪指震荡反弹逼近3300点,创业板指午后涨超1.7%,科创50指数…

springboot 配置文件、多环境配置、运行优先级

前言 提问:springboot项目,开发环境、测试环境和生产环境配置文件如何分开表示? 答:多profile文件方式 1、多环境配置(profile) 1.1、properties文件配置 application.properties:主配置文…

基于html+css的between布局

准备项目 项目开发工具 Visual Studio Code 1.44.2 版本: 1.44.2 提交: ff915844119ce9485abfe8aa9076ec76b5300ddd 日期: 2020-04-16T16:36:23.138Z Electron: 7.1.11 Chrome: 78.0.3904.130 Node.js: 12.8.1 V8: 7.8.279.23-electron.0 OS: Windows_NT x64 10.0.19044 项目…

【算法系列之动态规划IV】完全背包

完全背包 解题思路 01背包的核心思路&#xff0c;为了保证每个物品仅被添加一次&#xff0c;01背包内嵌的循环是从大到小遍历。 for(int i 0; i < weight.size(); i) { // 遍历物品for(int j bagWeight; j > weight[i]; j--) { // 遍历背包容量dp[j] max(dp[j], dp…
最新文章