303 See Other
HTTP response status code 303 See Other is returned by the server to indicate that the supplied Location does not link directly to the recently uploaded resource. Rather, it links to an alternative page such as an upload confirmation message. The HTTP method used for the second HTTP request is always a HTTP GET method.
Usage
The 303 See Other status code is typically returned as the result of a POST, PUT, or DELETE HTTP request. Essentially, it means that the result of the HTTP request can be found at a different URL. To fetch the new resource, the client must use a GET HTTP request with the specified Location.
Note
Many clients are non-compliant with the current specification and instead use the 302 Found HTTP response for this purpose.
Example
In the example, the client requests that a specific resource be deleted from the server. In response, the server sends the 303 See Other status code because it does not contain a viewable resource at the original Location. Rather, it points to a confirmation message at the newly specified Location.
Request
DELETE /tasks/314 HTTP/1.1
Host: www.example.re
Response
HTTP/1.1 303 See Other
Location: http//www.example.re/confirmation/delete.html
Code references
.NET
HttpStatusCode.SeeOther
Rust
http::StatusCode::SEE_OTHER
Rails
:see_other
Go
http.StatusSeeOther
Symfony
Response::HTTP_SEE_OTHER
Python3.5+
http.HTTPStatus.SEE_OTHER
Java
java.net.HttpURLConnection.HTTP_SEE_OTHER
Apache HttpComponents Core
org.apache.hc.core5.http.HttpStatus.SC_SEE_OTHER
Angular
@angular/common/http/HttpStatusCode.SeeOther
Takeaway
The 303 See Other status code indicates that the result of the HTTP request is viewable at an alternate Location, which is expected to be accessed using a HTTP GET method.