HTTP
HyperText Transfer Protocol
HTTP
Es el método mas común por el cual se intercambia información en la Web.
Define como la información debe ser transmitida y
en que formato.
Es un protocolo sin estados ya que cada petición es respondida sin conocimiento de peticiones anteriores.
Permite la comunicación entre varios servidores y clientes.
Cliente vs Servidor
Request (Peticion)
Conforma el mensaje enviado por el Cliente Web al Servidor Web.
Son utilizados para obtener, modificar, crear o eliminar recursos.
Están formados por un método, una URL y en ocasiones por un cuerpo.
URLs
Uniform Resource Locators

Identifica el host y el recurso al cual realizamos la petición y de quien esperamos la respuesta.
Métodos
Especifican, ante una URL, la acción que se va a tomar.
- GET: Obtienen un recurso existente.
- POST: Crean un nuevo recurso.
- PUT: Modifican un recurso existente.
- DELETE: Eliminan un recurso existente.
- PATCH: Modifica parcialmente un recurso existente.
- HEAD: Obitiene parcialmente un recurso existente.
- OPTIONS: Obtiene detalles sobre el servidor.
- TRACE: Obtiene la trazabilidad de la petición.
Response (Respuesta)
Conforma la respuesta del Servidor Web al Cliente Web.
Son utilizados indicar que ocurrió con la petición realizada por el Servidor Web
Están formados por un estado, una descripción del estado y en ocasiones por un cuerpo.
Código de Estados
Informan al Cliente Web como interpretar la respuesta.
Están formados por un numero de tres dígitos y una descripción del estado.
1xx - Informational: Información sobre la petición.
2xx - Success: Petición satisfactoria. 3xx - Redirection: Petición redireccionada. 4xx - Client Error: La petición contiene un error. 5xx - Server Error: Un fallo en el servidor.
1XX - Informational
Informa al cliente que la petición esta lista para continuar.
Es un estado provisional y generalmente obviado por los clientes Web.
100 - Listo para continuar.
2XX - Success
Informa al cliente que la petición fue procesada por el Servidor Web correctamente.
- 200 - OK: El recurso solicitado se encuentra en el cuerpo de la respuesta.
- 202 - Accepted: La petición fue aceptada pero puede no incluir el recurso solicitado.
- 204 - No Content: La respuesta no contiene un recurso en su cuerpo.
- 205 - Reset Content: Indica al cliente que debe recargar el documento.
- 206 - Partial Content: Indica al cliente que la respuesta solo contiene parte del recurso.
3XX - Redirection
Informa al cliente que la petición que se requiere tomar una acción extra, por ejemplo, redireccionar a otro sitio.
- 301 - Moved Permanently: El recurso se encuentra ubicado en otra URL.
- 303 - See Other: El recurso se encuentra temoralmente obicado en otra URL.
- 304 - Not Modified: El recurso no cambio y se sugiere utilizar el cache.
4XX - Client Error
Informa al cliente que el servidor considera que la petición realizada es incorrecta.
- 400 - Bad Request: La petición no respeta el formato.
- 401 - Unauthorized: La petición requiere autorización.
- 403 - Forbidden: Acceso negado al recurso.
- 404 - Not Found: Recurso invalido o inexistente.
- 405 - Method Not Allowed: El recurso no permite el metodo HTTP utilizado.
- 409 - Conflict: Conflicto en la petición, normalmente ocurre cuando se intenta modificar un recurso cuya fecha de creación es mas reciente que el intento de modificación.
5XX - Server Error
Informa al cliente que el servidor fallo mientras se procesaba la petición.
- 500 - Internal Server Error: Ocurrió un error desconocido mientras se procesaba la petición.
- 501 - Not Implemented: El servidor no soporta la petición realizada.
- 503 - Service Unavailable: Cuando no se puede acceder al servidor. Normalmente ocurre por timeout.
HTTP
By Neri Guidi
HTTP
- 494