303状态代码的一般解释
HTTP 状态代码 303 See Other 用于通知客户端,当前 URL 无法直接访问所请求的资源,但可以通过另一个 URL 访问。服务器会将该替代 URL 返回给客户端,并提示客户端使用 HTTP 方法 GET 向该地址发送新请求。这种状态代码通常用于成功操作后,如提交表单后,将用户重定向到确认页面或结果页面。这样可以确保在刷新或重新加载页面时不会再次发送原始请求。重定向通常是自动的,用户不会察觉。
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