303 See Other

Obtén el resultado desde otra URL con GET.

Cuándo usarlo

Redirigir tras el POST de un formulario para que recargar la página no lo vuelva a enviar.

A tener en cuenta

303 es el código correcto para Post/Redirect/Get: después del POST de un formulario, redirige a una página de resultado con 303 para que el navegador la cargue con GET, y así recargar o pulsar el botón Atrás no reenvía el formulario. A diferencia de 302, la especificación garantiza el cambio a GET para cualquier método original, incluidos PUT y DELETE, y el cuerpo de la solicitud se descarta.

Los buscadores tratan 303 como una redirección temporal, pero rara vez aparece en URL rastreables. No se almacena en caché salvo que las cabeceras lo indiquen. En las API, 303 puede llevar a un cliente de una tarea asíncrona terminada a su resultado. fetch lo sigue automáticamente en el modo de redirección predeterminado; response.redirected te indica que hubo una redirección, y response.url da la dirección final después del GET.

Redirección (3xx)

Los códigos 3xx son redirecciones: el cliente tiene que ir a otro sitio, o usar su copia en caché, para completar la solicitud.

Cómo se ve

HTTP/1.1 303 See Other

Cómo enviarlo

Node.js / Expressres.redirect(303, '/new-url')
Python / Flaskreturn redirect('/new-url', code=303)
nginxreturn 303 https://example.com$request_uri;

Cómo comprobarlo

curl -s -o /dev/null -w "%{http_code}\n" https://example.com/

Abrir Códigos de estado HTTP