Especificación del código de estado HTTP 300
El código de estado 300 Multiple Choices indica que el recurso de destino tiene más de una representación, cada una con su propio identificador más específico, y se está proporcionando información sobre las alternativas para que el usuario (o agente de usuario) pueda seleccionar una representación preferida redirigiendo su petición a uno o más de esos identificadores. En otras palabras, el servidor desea que el agente de usuario participe en una negociación reactiva para seleccionar la(s) representación(es) más apropiada(s) para sus necesidades (Sección 12).
Si el servidor tiene una opción preferida, el servidor DEBERÍA generar un campo de cabecera Location que contenga una referencia URI de la opción preferida. El agente de usuario PUEDE utilizar el valor del campo Location para la redirección automática.
Para métodos de petición distintos de HEAD, el servidor DEBERÍA generar contenido en la respuesta 300 Multiple Choices que contenga una lista de metadatos de representación y referencia(s) URI de la(s) que el usuario o agente de usuario pueda elegir la más preferida. El agente de usuario PUEDE hacer una selección de esa lista automáticamente si entiende el tipo de medio proporcionado. En esta especificación no se define un formato específico para la selección automática porque HTTP trata de permanecer ortogonal a la definición de su contenido. En la práctica, la representación se proporciona en algún formato fácilmente analizable que se considere aceptable para el agente de usuario, según lo determinado por el diseño compartido o la negociación de contenido, o en algún formato de hipertexto comúnmente aceptado.
Una respuesta 300 Multiple Choices es heurísticamente almacenable en caché; es decir, a menos que se indique lo contrario en la definición del método o en los controles explícitos de caché (véase la Sección 4.2.2 de [CACHING]).
Nota: La propuesta original para el código de estado 300 Multiple Choices definía el campo de cabecera URI como un campo que proporciona una lista de representaciones alternativas, de tal forma que sería utilizable para respuestas 200, 300 Multiple Choices y 406 y se transferiría en respuestas al método HEAD. Sin embargo, la falta de despliegue y el desacuerdo sobre la sintaxis llevaron a que tanto URI como Alternates (una propuesta posterior) se eliminaran de esta especificación. Es posible comunicar la lista como un valor de campo de cabecera Link [RFC8288] cuyos miembros tienen una relación de "alternate", aunque el despliegue es un problema del tipo "gallina y huevo".
Fuente / Cita de: El código de estado HTTP 300 Multiple Choices se especifica en la sección 15.4.1 de RFC9110.
Protocolo HTTP
¿Cómo lanzar un código de estado 300 con PHP?
Para lanzar el código de estado HTTP 300 en una página web, se puede utilizar la función PHP http_response_code. La sintaxis es la siguiente: http_response_code(300) (PHP 5 >= 5.4.0, PHP 7, PHP 8)
Probar el código de estado HTTP 300
Para poder mostrar el código de estado HTTP (en este caso 300 Multiple Choices) y otra información en el lado del cliente, debe abrirse la consola de desarrollo con F12. A continuación, vaya a la pestaña "Red". Ahora se puede abrir la página, el sitio web (ejemplo index.php) debe ser visible en la pestaña de red. Esta debe ser seleccionada y luego la sección Herder debe ser seleccionada. El usuario verá entonces el siguiente resultado:
URL: https://http-statuscode.com/errorCodeExample.php?code=300
Estado: 300 Multiple Choices
Esos: Network
Dirección IP: XX.XX.XX.XX
Compatibilidad del código de estado 300 con los navegadores
Chrome | no data |
Edge | no data |
Firefox | no data |
Opera | no data |
Safari | no data |
Chrome Android | no data |
Firefox for Android | no data |
Opera Android | no data |
Safari on iOS | no data |
Internet | no data |
WebView Android | no data |
Constantes en lenguajes de programación
HttpStatusCode.MultipleChoices
http.StatusMultipleChoices
Response::HTTP_MULTIPLE_CHOICES
:multiple_choices