Códigos de estado HTTP

   Cuando se utiliza un navegador de red, lo habitual es realizar peticiones a los servidores donde se encuentran alojadas las páginas web.
  En algunas ocasiones, en lugar de aparecer las páginas en sí, o alguno de sus elementos a los que se pretenda acceder (fotografías, otras páginas propias del sitio web, etc.), se llega a un mensaje que el servidor tiene preparado si se dan ciertas circunstancias durante la navegación de red.

 Estos mensajes, que en la mayoría de las ocasiones  se dan entre el navegador del usuario y el servidor, y suelen ser invisibles para el usuario, son conocidos como códigos de estado HTTP, y sirven para identificar si todo ha ido bien o ha habido algún error. Realmente, el usuario sólo verá los códigos que indiquen que ha habido problemas.
  Existen cinco categorías de códigos de  estado HTTP: 100, 200, 300, 400, y 500.

CÓDIGOS DE ESTADO 100

  Se trata de respuestas informativas, donde cada respuesta significa que el servidor ha recibido los encabezados de la petición, y que el cliente debería proceder a enviar el cuerpo de la misma (en el caso de peticiones para las cuales el cuerpo necesita ser enviado). Si el cuerpo de la petición es largo, es ineficiente enviarlo a un servidor, cuando la petición ha sido ya rechazada, debido a encabezados inapropiados. Para hacer que un servidor compruebe si la petición podría ser aceptada basada únicamente en los encabezados de la petición, el cliente debe enviar "Expect: 100-continue" como un encabezado en su petición inicial y verificar si un código de estado "100 Continue" es recibido en respuesta, antes de continuar (o recibir "417 Expectation Failed" y no continuar).
  Existen los siguientes códigos:
  •  100 Continue: Indica al navegador que continúe haciendo su petición.
  •  101 Switching Protocols: Indica al navegador que acepta el cambio de protocolo pedido.
  •   102 Processing: Indica al navegador que ha recibido la petición y está aún procesándola.
  •  103 Checkpoint: Reanudará una petición cancelada con anterioridad.

CÓDIGOS DE ESTADO 200

  Esta clase de código de estado indica que la petición fue recibida correctamente, entendida y aceptada. Entre estos códigos se dan los siguientes:
  •     200 OK: Todo se ha procesado de forma correcta.
  •   201 Created: La petición se ha procesado y, como resultado, se ha creado un nuevo recurso.
  •  202 Accepted: La petición ha sido aceptada,  mas todavía no se ha completado.
  •   203 Non-Authoritative Information: Indica que la petición se ha completado, pero se ha obtenido el recurso de otro servidor.
  •   204 No Content: La petición se ha procesado con éxito, pero el resultado está vacío.
  •   205 Reset Content: Igual que el anterior, pero indicando al navegador que debe inicializar la página desde la que se realizó la petición.
  •   206 Partial Content: Se está devolviendo el contenido pedido de forma parcial, lo que es útil para reanudar descargas que se han pausado.
  •   207 Multi-Status: Devuelve varias peticiones a la vez.
  •   208 Already Reported: Se ha devuelto el listado de elementos, así que no se vuelve a listar.

CÓDIGOS DE ESTADO 300

  Esta clase de código de estado indica que una acción subsecuente necesita efectuarse por el agente de usuario para completar la petición. La acción requerida puede ser llevada a cabo por el agente de usuario sin interacción con el usuario si y solo si el método utilizado en la segunda petición es "GET" o "HEAD". El agente de usuario no debe redirigir automáticamente una petición más de 5 veces, dado que tal funcionamiento indica usualmente un bucle infinito.
  Existen los códigos siguientes:
  •   300 Multiple Choices: Indica al navegador que existen varias alternativas para el contenido que ha pedido (distintas opciones de formato para vídeo, listar archivos con distintas extensiones, etc.).
  •   301 Moved Permanently: La página que estás buscando no está aquí y se ha movido permanentemente a una nueva ubicación.
  •   302 Found: Indica que la página o recurso está disponible en otra ubicación.
  •   303 See Other: Igual al anterior.
  •  304 Not Modified: Indica al navegador que la página no se ha modificado desde la última vez que se pidió. Así se puede evitar descargarla de nuevo, ahorrando ancho de banda.
  •   305 Use Proxy: Este recurso solo está disponible desde un proxy.
  •   306 Switch Proxy: Este código ya no se usa.
  •   307 Temporary Redirect: Indica al navegador que este recurso, o página, se ha movido de sitio, pero todavía está disponible en esta dirección.
  •   308 Permanent Redirect: Similar al código 301, la página ha cambiado de lugar permanentemente.

CÓDIGOS DE ESTADO 400

  La intención de esta clase de códigos de estado es para casos en los cuales el cliente parece haber errado la petición. Excepto cuando se responde a una petición "HEAD", el servidor debe incluir una entidad que contenga una explicación a la situación de error, y si es una condición temporal o permanente. Estos códigos de estado son aplicables a cualquier método de solicitud (como "GET" o "POST"). Los agentes de usuario deben desplegar cualquier entidad al usuario.
  Estos son típicamente los códigos de respuesta de error más comúnmente encontrados:
  •   400 Bad Request: Algo ha ido mal con la petición. Si se recibe este error, se debe probar a refrescar la página o actualizar el navegador.
  •   401 Unauthorized: No se tiene permiso para recibir ese contenido.
  •   402 Payment Required: En desuso por ahora.
  •   403 Forbidden: La petición es correcta, pero el servidor se niega a ofrecer el recurso o página web. Es posible que se necesite una cuenta en el servicio e iniciar sesión antes de poder acceder.
  •   404 Not Found: Indica que el recurso no está disponible en el servidor. Quizá lo estuvo en el pasado y ha sido borrado o quizá se ha escrito la dirección web mal. Si se recibe este error, se debe comprobar que la dirección que se ha introducido es correcta y no le falta o sobra nada. También se puedes insertar la dirección en Wayback Machine para ver si existió en el pasado.
  •   405 Method Not Allowed: No se permite el uso de ese método.
  •   406 Not Acceptable: La petición sólo puede generar un tipo de contenido distinto al que se especificó como aceptable.
  •   407 Proxy Authentication Required: Se requiere al cliente que se identifique mediante un proxy.
  •   408 Request Timeout: El servidor ha pasado demasiado tiempo esperando una respuesta por parte del cliente.
  •   409 Conflict: La petición no se pudo completar porque hubo un problema con ella.
  •   410 Gone: Esa página no existe, se borró. Este código es usado por buscadores como Google, que usan la información para eliminar contenido de su base de datos.
  •   411 Length Required: El cliente debía indicar la longitud del contenido, pero no lo hizo.
  •   412 Precondition Failed: El servidor no cumple las condiciones previas que se indicaban en la petición.
  •   413 Payload Too Large: La petición es demasiado larga y el servidor se niega a procesarla.
  •   414 URI Too Long: La dirección web es demasiado larga. Si se recibe este error, difícilmente se podrá solucionar pues no es problema tuyo, sino de la página que generó dicho enlace.
  •   415 Unsupported Media Type: El tipo de archivo que se ha recibido es distinto al que se esperaba.
  •   416 Range Not Satisfiable: El cliente ha pedido una porción de un recurso que es incorrecta.
  •   417 Expectation Failed: El servidor no puede cumplir con las expectaciones de la cabecera.
  •   418 I'm a teapot: Es un código de estado que nació como una broma de April's Fools. Se puede recibir uno visitando esta web.
  •   421 Misdirected Request: El servidor es incapaz de producir una respuesta.
  •   422 Unprocessable Entity: La petición era correcta pero tenía algún error semántico.
  •   423 Locked: Este recurso está bloqueado.
  •   424 Failed Dependency: Este recurso depende de otra respuesta, que falló.
  •   426 Upgrade Required: El cliente debe usar un protocolo distinto.
  •   428 Precondition Required: El servidor requiere que la petición sea condicional.
  •   429 Too Many Requests: Se han enviado demasiadas peticiones en un corto período de tiempo.
  •   431 Request Header Fields Too Large: La cabecera o algunos de los campos de la cabecera son demasiado grandes.
  •   452 Unavailable for Legal reasons: El servidor deniega el accceso a este recurso por motivos legales.

CÓDIGOS DE ESTADO 500

  Estos códigos indican casos en los cuales el servidor tiene registrado aún antes de servir la solicitud, que está errado o es incapaz de ejecutar la petición. Excepto cuando está respondiendo a un método "HEAD", el servidor debe incluir una entidad que contenga una explicación de la situación de error, y si es una condición temporal o permanente. Los agentes de usuario deben desplegar cualquier entidad incluida al usuario. Estos códigos de respuesta son aplicables a cualquier método de petición.
  Los siguientes son los códigos de estado  más típicos:
  •   500 Internal Server Error: Indica que hay un problema en el servidor. No se especifica nada más concreto, de modo que el problema puede ser de cualquier tipo, desde que esté sobrecargado hasta que esté en ese momento realizando algunos cambios internos de modo que algo haya dejado de funcionar. El usuario sólo puede esperar y probar de nuevo más tarde.
  •   501 Not Implemented: El servidor aún no ha implementado el método que se ha pedido, aunque es probable que se añada en un futuro.
  •   502 Bad Gateway: El servidor está actuando como un proxy o puerta de enlace y ha recibido una respuesta inválida del otro servidor.
  •   503 Service Unavailable: Establece que el servidor no está disponible en ese momento. Puede que sea porque está sobrecargado con demasiadas peticiones o porque en ese momento está con tareas de mantenimiento. Se debe probar de nuevo en unos minutos.
  •   504 Gateway Timeout: El servidor está actuando como una puerta de enlace o proxy y no recibió respuesta del servidor.
  •   505 HTTP Version Not Supported: El servidor no soporta la versión del protocolo HTTP que se le pidió.
  •   506 Variant Also Negotiates: La petición resulta en una petición con referencias circulares.
  •   507 Insufficient Storage: El servidor no tiene espacio suficiente para completar la petición.
  •   508 Loop Detected: El servidor ha detectado un bucle infinito.
  •   510 Not Extended: El servidor requiere de extensiones para completar la petición.
  •   511 Network Authentication Required: El cliente necesita identificarse.
  •   512 Not updated: Indica que el servidor está en una operación de actualizado y no puede tener conexión.
  •  521 Version Mismatch: Este error sale cuando la versión no es compatible con el equipo del usuario. 
  Espero que la presente entrada haya sido interesante para el lector. Si es así, aguardo que éste la comente y/o la comparta, por favor.

No hay comentarios:

Publicar un comentario

Deje aquí su comentario, si no puede comentar, pruebe a hacerlo desde otro navegador de red u otro equipo.