前言

3XX系列状态码中302、303、307都是临时重定向,下面来说如何区分

分类

http1.1 3XX状态表

状态码 备注
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
307 Temporary Redirect

301

永久重定向

302

http协议1.1 引用

临时重定向,这里注意一个细节。

当请求方法是post方法的时候,需要用户确认才可以重定向到新的uri。比如弹框询问用户是否重定向到新的地址

但是多数浏览器实际实现的时候并没有遵循这一条,所以才在http1.1中引入了303和307两个状态码。302为了兼容老版本也保留了下来

303与307

在http协议1.0中是没有这两个状态码的。在http1.1中为了解决上个版本出现的协议规定与浏览器实现的歧义问题,引入了303和307两个状态码。以此来将1.0协议的规定和实际浏览器实现这两种情况拆开。

303

符合1.0版本时,浏览器对于302状态码的实际实现。
无论请求方法是get或者post,遇到303都直接重定向。

307

符合1.0版本时,协议对302状态码的纸面规定。
当请求方法是post方法的时候,需要用户确认才可以重定向到新的uri

304

304的含义不是重定向。
304表示用户查找的资源存在,但是不满足请求需要的条件。
一般出现304的情况,请求首部中包含if-xxx这样的条件请求,当判断条件为假的时候就会返回304。
例如:

If-Modifed-Since: Mon, 14 Jan 2019 00:00:00 GMT

此字段指定需要的资源在设置的时间前是否有更新过,如果没有更新则返回304。
此类字段还有很多,详情请查看http协议 RFC

参考资料

Hypertext Transfer Protocol – HTTP/1.0
Hypertext Transfer Protocol – HTTP/1.1

HTTP协议之3XX状态码相关推荐

  1. HTTP协议之http状态码详解 300-305 重定向

    HTTP协议之http状态码详解 HTTP状态码,我都是现查现用. 我以前记得几个常用的状态码,比如200,302,304,404, 503. 一般来说我也只需要了解这些常用的状态码就可以了.  如果 ...

  2. TCP/IP协议及常见状态码说明(SYN,FIN,ACK,PSH,RST)

    TCP/IP协议及常见状态码(SYN,FIN,ACK,PSH,RST) TCP/IP协议\TCP协议原理\报文格式\三次握手的状态码 1.TCP/IP协议 TCP/IP协议(Transmission ...

  3. 你所知道的3xx状态码

    众所周知,我们都知道300-399这一系列的状态码代表的是重定向状态码.重定向状态码要么告知客户端使用替代位置来访问她们所感兴趣的资源,要么就提供一个替代的响应而不是资源的内容.如果资源已被移动,可发 ...

  4. 【总结】HTTP协议中的状态码(200、403、404、500等)

    [总结]HTTP协议中的状态码(200.403.404.500等) 当我们打开网页或刷新网页或点击超链接等操作时,服务器都会给出相应的响应 返回的状态也有很多种 现在大多都是遵循HTTP协议的,在HT ...

  5. HTTP协议之http状态码详解

    什么是HTTP状态码 HTTP状态码的作用是:Web服务器用来告诉客户端,发生了什么事. 状态码位于HTTP Response 的第一行中,会返回一个"三位数字的状态码"和一个&q ...

  6. HTTP协议方法及状态码(HTTP协议入门必备)

    目录 基本概念 使用telnet演示HEAD方法 使用telnet演示TRACE方法 使用telnet演示OPTIONS方法 HTTP响应中的状态码 304响应演示 使用telnet演示304响应 基 ...

  7. http协议的各类状态码

    http协议的状态码 1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态码. 100(继续) 请求者应当继续提出请求.服务器返回此代码表示已收到请求的第一部分,正在等待其余部分. 101( ...

  8. HTTP请求过程 常见协议 请求类型 状态码 websocket

    HTTP(HyperText Transfer Protocol)超文本传输协议,是一种用于分布式.协作式和超媒体信息系统的应用层协议. HTTP 是一个简单的请求-响应协议,是客户端和服务端之间请求 ...

  9. 【HTTP协议】HTTP状态码列表大全

    HTTP状态码 当浏览者访问一个网页时,浏览者的浏览器会向网页所在服务器发出请求.当浏览器接收并显示网页前,此网页所在的服务器会返回一个包含HTTP状态码的信息头(server header)用以响应 ...

  10. http协议,http状态码,请求,响应

    http 简介 http 是一种超文本传输协议(Hyper Text Transfer Protocol), 可以用来在络中把服务器消息传输到我们的浏览器中.并且Http 协议是一个基于 TCP/IP ...

最新文章

  1. 单击CheckBox,全选GridView中所有CheckBox
  2. Python学会使用虚拟环境——pipenv
  3. python中关于turtle库的学习笔记
  4. python加密程序_Python 简单的可逆加密程序
  5. SSM项目启动报错More than one fragment with the name [spring_web] was found. This is not legal with relativ
  6. JSON和JS数据类型转化
  7. 本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/jinjazz/archive/2009/04/29/4138000.aspx...
  8. php 随机坐标点,php实现 计算坐标点在某区域
  9. Android 仿微信二维码名片制作,生成二维码,扫码生成名片表单信息
  10. Hadoop3.2.1 【 HDFS 】源码分析 :BlockManager解析 [二]
  11. linux32 浏览器,谷歌停止支持32位linux系统的Chrome浏览器
  12. c语言Int16_t 什么意思,__IO uint16_t 是什么意思,在定义参数时为什么不直接写成 uint16...
  13. 为什么这个男人爱“拈花惹草”还受阿里人追捧?
  14. CF791A Bear and Big Brother 【题解】
  15. 全球经济环境剧烈波动,Masterboxan INC如何在巨浪中顺流而行
  16. iOS 未安装微信,审核被拒绝的解决方式
  17. linux wps不能输入中文,Ubuntu系统中WPS不能输入中文该怎么办?
  18. ASP.NET 海南热带瓜菜百科网信息管理系统的设计与实现-王翔-专题视频课程
  19. keras-gpu安装
  20. C语言象棋小程序1.0版(def C++版)

热门文章

  1. 设置定时器,持续调用接口
  2. 王垠面阿里P9,面跪后与P10赵海平互怼:人性最大的愚蠢,是互相为难
  3. 第三方支付平台-框架介绍
  4. 关于卸载office的问题:office无法卸载的办法(附office安装和注册表查看)
  5. OC5022B内置MOS的开关降压型恒流驱动芯片
  6. mapreduce 和hive 的区别
  7. Revisiting RCNN: On Awakening the Classification Power of Faster RCNN解读
  8. Proguard打包混淆报错:can't find superclass or interface
  9. Live Streaming Datasets--网络数据集下载
  10. 医学超声成像—合成孔径法(Synthetic Aperture Methods)[3]