从HTTP状态码的基本概念开始,逐步介绍不同类型的重定向及其应用场景。无论您是初学者还是有经验的开发人员,都能从本文中获得实用的知识和技巧。
1. http状态码
http状态码是客户端和服务器端进行http通讯时,服务端发给客户端的数字代码(3位数字组成),用于表示服务器对请求的处理结果,比如常见的404
2. http重定向
http重定向是服务端返回的处理结果中一种,用于指示客户端请求的资源在其它位置
http重定向的状态码为 3xx,常见的有301和303
- 301 Moved Permanently 永久重定向,应该更新资源地址,以便下次直接请求到新位置
- 302 Found 临时重定向,保持原始请求方法(Get/Post)来获取新位置的资源,可能会被浏览器缓存
- 303 See Other 临时重定向,使用Get方法获取新位置的资源,不会被浏览器缓存
- 307 Temporary Redirect 临时重定向,跟302的行为一致,比302更加严格的要求使用相同http方法去请求新位置的资源
- 308 Permanent Redirect 永久重定向,跟301类似,强调保留原始请求的http方法(Get/Post)
- 300 Multiple Choices 多重选择,服务端会返回多个URI的列表,由客户端选择
- 304 Not Modified 未修改,表示请求资源自上次请求之后未修改,可以直接从缓存获取