Tabla de códigos de estado HTTP
5 minutos de lectura
Fecha: 1/7/2020
Una tabla de códigos de estado HTTP siempre hace falta, aqui tienes una bastante completa por si alguno de los códigos no te suenan o por si quieres saber cual es el mas adecuado enviar
1×× Informativo
Código | Estado | Descripción |
---|---|---|
100 | Continue | El servidor recibe la parte inicial de la solicitud, la da por buena y tiene intención de responder cuando la tenga toda |
101 | Switching Protocols | El servidor asume y acepta que quieres cambiar el protocolo de esta petición, por ejemplo cuando usas un socket |
102 | Processing | Este código te lo da cuando ya ha recibido toda la solicitud, la da por buena y tiene intención de responder cuando el servidor acabe de procesarla |
2×× Éxito
Código | Estado | Descripción |
---|---|---|
200 | OK | La solicitud se ha completado con éxito |
201 | Created | La solicitud se ha completado con éxito y además ha generado nuevos recursos |
202 | Accepted | La solicitud ha sido aceptada, lo que no implica que vaya a aceptarse, pues podria ser rechazada cuando el servidor la procese |
203 | Non-authoritative Information | La solicitud se ha completado con éxito, pero la respuesta ha sido modificada por un proxy (No viene tal cual salió del servidor), a efectos prácticos es similar al código 214 |
204 | No Content | La solicitud se ha completado con éxito, pero no hay contenido en el cuerpo de la respuesta |
205 | Reset Content | La solicitud se ha completado con éxito, y solicita al usuario que recargue el contenido |
206 | Partial Content | La solicitud se ha completado con éxito, pero solo te va a devolver parte del recurso solicitado (Generalmente pasa porque hay una limitación en el cliente que no permite mandarla entera) |
207 | Multi-Status | En esta caso esta devolviendo varios recursos y cada uno podría tener un código de estado distinto. El cuerpo es un XML y por ejemplo un recurso podria devolver un 200 y el otro un 404 |
208 | Already Reported | Quiere decir que estas solicitando un listado de elementos DAV ya notificados con anterioridad, por lo que no se van a volver a listar. |
226 | IM Used | El servidor ha cumplido una petición GET para el recurso y la respuesta es una representación del resultado de una o más manipulaciones de instancia aplicadas a la instancia actual. |
3×× Redirección
Código | Estado | Descripción |
---|---|---|
300 | Multiple Choices | Lista una serie de links (5 como máximo) a los que el cliente podria acceder, por ejemplo cuando sirves videos o imágenes en distintos formatos y delegas en el cliente escoger el más adecuado para él. |
301 | Moved Permanently | El recurso que has solicitado se ha movido definitivamente y para acceder a él la próxima vez debes usar la URI que te devuelve |
302 | Found | El recurso que has solicitado se ha movido temporalmente a otra URI, al ser temporal sigue usando la misma dirección introducida |
303 | See Other | Junto con el código 307, es una implementación del código 302, esto quiere decir que el recurso se ha movido temporalmente y devuelve la URI donde lo puedes encontrar |
304 | Not Modified | Indica que el recurso solicitado no se ha modificado desde la última petición, ahorra ancho de banda y evita que se reprocese lo mismo |
305 | Use Proxy | Esta respuesta señala que para acceder al recurso que estas pidiendo necesitas hacerlo a través del proxy que te indica en la respuesta |
307 | Temporary Redirect | Junto con el código 303, es una implementación del código 302, esto quiere decir que el recurso se ha movido temporalmente pero no debes cambiar de URI, aun puedes acceder a él igual |
308 | Permanent Redirect | El recurso que has solicitado se ha movido definitivamente y para acceder a él la próxima vez debes usar la URI que te devuelve (Es igual que el 301, salvo porque el método HTTP tiene que ser el mismo) |
4×× Errores en el cliente
Código | Estado | Descripción |
---|---|---|
400 | Bad Request | El servidor no puede o no va a procesar la solicitud porque el cliente ha cometido un error de sintaxis o la ha construido mal |
401 | Unauthorized | La solicitud ha fallado porque carece de credenciales de autenticación válidas, o no te has autenticado o lo has hecho mal |
402 | Payment Required | Reservado para uso futuro, fue creada para soportar para micropagos o dinero electronico, cosa que nunca pasó y por tanto esta en desuso |
403 | Forbidden | La solicitud ha fallado porque no estas autorizado a hacerla, en este caso si te has autenticado bien, pero no tienes privilegios para acceder al recurso que solicitas |
404 | Not Found | Posiblemente el código más famoso, indica que el servidor no encuentra el recurso que solicita el cliente, esto te lo puede decir por dos motivos, porque realmente no lo encuentra o porque lo encuentra pero no quiere revelar que existe |
405 | Method Not Allowed | Indica que has solicitado un recurso con un método incompatible, por ejemplo quieres recuperar un listado de lo que sea, pero en vez de atacar la URI con un GET lo haces con un POST |
406 | Not Acceptable | Cuando has solicitado cierto recurso y has definido en las cabeceras un formato que no se corresponde con el que va a enviar, por eso dice que no es aceptable (por ejemplo en la cabecera Accept tu has puesto text/html pero la respuesta es un JSON) |
407 | Proxy Authentication Required | Parecido al 401 Unauthorized, pero indica que el cliente necesita autenticarse para poder usar un proxy. |
408 | Request Timeout | La solicitud del cliente ha tardado tanto en ser enviada al servidor que ha superado el tiempo de espera definido y falló |
409 | Conflict | |
410 | Gone | |
411 | Length Required | |
412 | Precondition Failed | |
413 | Payload Too Large | |
414 | Request-URI Too Long | |
415 | Unsupported Media Type | |
416 | Requested Range Not Satisfiable | |
417 | Expectation Failed | |
418 | I’m a teapot | |
421 | Misdirected Request | |
422 | Unprocessable Entity | |
423 | Locked | |
424 | Failed Dependency | |
426 | Upgrade Required | |
428 | Precondition Required | |
429 | Too Many Requests | |
431 | Request Header Fields Too Large | |
444 | Connection Closed Without Response | |
451 | Unavailable For Legal Reasons | |
499 | Client Closed Request |
5×× Errores en el servidor
Código | Estado | Descripción |
---|---|---|
500 | Internal Server Error | Es un código de error muy genérico, que significa que el servidor al procesar la solicitud encontró una condición inesperada que le impidió completarla |
501 | Not Implemented | El servidor no soporta alguna funcionalidad necesaria para responder a la petición o no encuentra el método |
502 | Bad Gateway | El servidor está actuando de proxy o gateway y ha recibido una respuesta inválida del otro servidor al que accedió para cumplir la solicitud |
503 | Service Unavailable | El servidor no puede manejar la solicitud debido a una sobrecarga temporal o un mantenimiento programado |
504 | Gateway Timeout | |
505 | HTTP Version Not Supported | La petición usa una versión del protocolo HTTP no soportada, se refiere a la major de la versión |
506 | Variant Also Negotiates | |
507 | Insufficient Storage | El servidor no tiene suficiente espacio de almacenamiento libre para crear o modificar el recurso solicitado |
508 | Loop Detected | El servidor terminó una operación porque encontró un bucle infinito al procesar la solicitud |
510 | Not Extended | La solicitud no cumple la política para acceder al recurso. El servidor debe devolver la información necesaria para que el cliente emita una solicitud extendida. |
511 | Network Authentication Required | |
599 | Network Connect Timeout Error | No se especifica en ningún RFC, pero algunos proxies HTTP lo utilizan para señalar que hay un tiempo de espera entre ellos y el servidor |