HTTP状态代码303的规范
303 See Other状态代码表明服务器正在将用户代理重定向到一个不同的资源,如Location头域中的URI所示,该资源旨在为原始请求提供一个间接响应。用户代理可以执行针对该URI的检索请求(如果使用HTTP,则为GET或HEAD请求),该请求也可能被重定向,并将最终的结果作为对原始请求的回答。请注意,Location头域中的新URI不被认为等同于目标URI。
这个状态代码适用于任何HTTP方法。它主要用于允许POST动作的输出将用户代理重定向到一个不同的资源,因为这样做提供了与POST响应相对应的信息,作为一个可以单独识别、添加书签和缓存的资源。
对GET请求的303 See Other响应表明原服务器没有可以由服务器通过HTTP传输的目标资源的表示。然而,Location字段的值指的是描述目标资源的资源,这样,在其他资源上提出检索请求可能会产生对接收者有用的表示,而不意味着它代表原始的目标资源。
除了对 HEAD 请求的响应之外,303 See Other 响应的表示应该包含一个简短的超文本说明,其中有一个指向 Location 头字段中提供的相同 URI 引用的超链接。
来源/引自: 303 See Other HTTP状态代码由15.4.4的RFC9110部分指定。
如何用PHP抛出一个303状态代码?
要在一个网页上抛出HTTP状态代码303,可以使用PHP函数http_response_code。其语法如下: http_response_code(303) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
测试303 HTTP状态代码
为了能够在客户端显示HTTP状态代码(本例中为303 See Other)和其他信息,必须用F12打开开发控制台。然后导航到 "网络 "标签。现在可以打开页面,网站(例如index.php)应该在网络标签中可见。这必须被选中,然后必须选择Herder部分。然后,用户将看到以下结果:
URL: https://http-statuscode.com/errorCodeExample.php?code=303
状况: 303 See Other
那些: Network
IP地址: XX.XX.XX.XX
303状态代码的浏览器兼容性
Chrome | Yes |
Edge | Yes |
Firefox | Yes |
Opera | Yes |
Safari | Yes |
Chrome Android | Yes |
Firefox for Android | Yes |
Opera Android | Yes |
Safari on iOS | Yes |
Internet | Yes |
WebView Android | Yes |
编程语言中的常量
HttpStatusCode.MultipleChoices
http.StatusSeeOther
Response::HTTP_SEE_OTHER
:see_other