El recurso de destino reside temporalmente bajo un URI diferente y el cliente NO DEBE cambiar el método de solicitud si realiza una redirección automática a ese URI.
Dado que la redirección puede cambiar con el tiempo, el cliente debería seguir utilizando el URI de solicitud original efectivo para futuras solicitudes.
El servidor DEBERÍA generar un campo de cabecera Location en la respuesta que contenga una referencia URI para el URI diferente. El cliente PUEDE utilizar el valor del campo Location para la redirección automática. La carga útil (payload) de la respuesta del servidor suele contener una breve nota de hipertexto con un hipervínculo a la(s) URI(s) diferente(s).
Nota: El código de estado HTTP Temporary Redirect 307 es similar al 302 Found, excepto que no permite cambiar el método de solicitud de POST a GET. Esta especificación no define ninguna contrapartida equivalente para 301 Moved Permanently (RFC7238, sin embargo, propone definir el código de estado 308 Permanent Redirect para este propósito).
Referencias de programación del Código HTTP 307
- Symfony HTTP Status Constant
Response::HTTP_TEMPORARY_REDIRECT
- Python2 HTTP Status Constant
httplib.TEMPORARY_REDIRECT
- Python3+ HTTP Status Constant
http.client.TEMPORARY_REDIRECT
- Python3.5+ HTTP Status Constant
http.HTTPStatus.TEMPORARY_REDIRECT
- Go HTTP Status Constant
http.StatusTemporaryRedirect
- Rails HTTP Status Symbol
:temporary_redirect
- .NET HTTP Status Constant
System.Net.HttpStatusCode.TemporaryRedirect
- C# HTTP Status Enum
HttpStatusCode.RedirectKeepVerb
- C# HTTP Status Enum (Alternative)
HttpStatusCode.TemporaryRedirect
- Rust HTTP Status Constant
http::StatusCode::TEMPORARY_REDIRECT