303 See Other 告诉客户端使用 GET(或 HEAD)获取另一个资源,其地址由 Location 响应头给出。它并不表示原始资源已经移动,而是指向另一个存放答复的独立资源。
它的主要用途是 Post/Redirect/Get 模式。表单通过 POST 提交后,服务器返回 303 和确认页的 URL,浏览器再用 GET 加载该页面。这样,刷新页面或点击“返回”都不会再次提交表单。浏览器跟随 303 时,会把除 HEAD 以外的所有方法都改为 GET,并丢弃请求体。
303 默认不可缓存。对 GET 请求返回 303 还可能表示:服务器本身没有所请求事物的表示,但在另一个 URL 上对它进行了描述,这是关联数据(Linked Data)中使用的一种模式。
响应示例
HTTP
HTTP/1.1 303 See Other
Date: Fri, 06 Nov 2026 10:15:32 GMT
Location: /orders/8412/confirmation
Content-Length: 0 SEO 与重定向检测
常见原因与使用场景
- Post/Redirect/Get:表单处理程序在
POST之后重定向到“感谢”页或订单页。 - API 接受了一个任务,并把客户端引导到另一个存放结果的资源。
- 关联数据:代表现实世界事物的 URI 重定向到描述该事物的文档。