4Geeks logo
4Geeks logo
Sobre Nosotros

Catálogo de contenidos

Para los geeks autodidactas, este es nuestro extenso catálogo de contenido con todos los materiales y tutoriales que hemos desarrollado hasta el día de hoy.

Tiene sentido comenzar a aprender leyendo y viendo videos sobre los fundamentos y cómo funcionan las cosas.

Full-Stack Software Developer

Data Science and Machine Learning - 16 wks

Buscar en lecciones

Aprendizaje social y en vivo

La forma más eficiente de aprender: Únete a una cohorte con compañeros, transmisiones en vivo, sesiones improvisadas de codificación, tutorías en vivo con expertos reales y mantenga la motivación.

De cero a que te paguen como desarrollador, aprende las habilidades del presente y del futuro. Impulsa tu carrera profesional y sé contratado por una empresa tecnológica.

Empezar a programar

← Regresar a lecciones
Editar en Github

¿Què es HTTP?

¿Qué es HTTP?

¿Qué es HTTP?

Como era de esperarse, si vas a transmitir documentos todo lo que necesitas es texto. Cuando haces páginas web todo corre bajo el protocolo HTTP (The Hypertext Transfer Protocol) que es un especialista en la transmisión de texto.

Básicamente, es un protocolo de transferencia de texto que opera a través de solicitudes entre un cliente y un servidor. HTTP es el término utilizado para describir este sencillo lenguaje basado en texto. No importa cómo se desarrolle, el objetivo del servidor será siempre entender y devolver respuestas de texto sencillo.

  • La foto se convierte en texto (un texto que, en este momento, no vas a poder entender).
  • Se transmite a través de internet como texto. Si un hacker intercepta esto, lo que verían es un conjunto de símbolos / letras / números uno tras otro.
  • Esa cadena de caracteres llega a la computadora de tu abuela.
  • Tu abuela hace doble clic en la foto y el programa que está usando para ver la foto transforma ese texto nuevamente en una imagen comprensible para un humano.

HTTP

Imagen 1: Los 4 pasos necesarios para enviar imágenes a través de Internet: primero se convierte en texto, luego viaja, luego llega a la computadora de la abuela, la abuela abre la imagen y la imagen muestra ... ¡finalmente, la abuela está feliz mirando a su nieto!

¿Cómo funciona HTTP?

HTTP

Este protocolo funciona a través de solicitudes y respuestas el cliente (por ejemplo, un navegador de internet) y un servidor (por ejemplo, los computadores en donde residen sitios web).

El servidor responde con una respuesta estructurada y con una serie de metadatos que establecen pautas para el inicio, desarrollo y cierre de la comunicación. Estas pautas son los llamados "métodos de petición".

A una secuencia de estas solicitudes se le conoce como sesión HTTP.

Métodos de petición

Cada conversación en la web comienza con una petición. Esta petición es un mensaje de texto o un conjunto de líneas creado por un cliente (navegador, app) que especifica el documento que solicitas y el método que aplicarás. El cliente envía esta petición a un servidor, y entonces espera la respuesta.

Una petición en lenguaje HTTP sería algo así:

1GET / HTTP/1.1 2Host: google.com 3Accept: text/html 4User-Agent: Chrome/31.0.1650.57 (Macintosh; Intel Mac OS X 10_9_0)

En este caso en particular estamos utilizando el método GET.

Este simple mensaje comunica todo lo necesario acerca de qué recurso está solicitando el cliente exactamente. La primera línea de una petición HTTP es la más importante y contiene dos cosas:

  • el URI (Uniform Resource Identifier) que es la única dirección o ubicación que identifica el recurso que el cliente quiere.
  • el método HTTP define lo que quieres hacer con el recurso y es tu método de petición. Los más utilizados son lo siguientes:
MétodoDescripción
GETSe utiliza para leer el estado del servidor. Al ser una operación segura, puede ejecutarse varias veces sin riesgo de modificación de datos o corrupción; llamarla una vez tiene el mismo efecto que llamarla diez veces.
POSTLos puristas de REST usan post solo para creación. Eso significa que cada vez que POSTEE algo en una API, estará creando un nuevo registro en la base de datos para eso. Algunas API utilizan POST para todas las operaciones de escritura (eliminar, actualizar y crear). Lo hacen porque PUT y DELETE no están disponibles en HTML / Formularios y eso hace que esos métodos sean más difíciles de usar.
PUTEsto es más usado para actualizar el estado en el servidor; Aunque también se puede utilizar para crear estados.
DELETESe utiliza para eliminar datos en el servidor
1DELETE /blog/15 HTTP/1.1`

Además de la primera línea, un petición HTTP también tiene otras líneas de datos llamadas request headers, o cabeceras de solicitud, mediante las que puede entregar una amplia gama de información como: el nombre del servidor o host, los formatos de respuesta que acepta el cliente para realizar la solicitud, el formato en que está enviando datos en el cuerpo de la solicitud (si corresponde)...

Códigos de Status para la Respuesta

Cuando el servidor recibe la petición, sabe con exactitud que recurso necesita el cliente (a través de la URI) y que quiere hacer con ese recurso(a través del método HTTP).

Traducido a HTTP la respuesta sería algo así:

1HTTP/1.1 200 OK 2Date: Sun, 01 Dec 2013 18:17:45 GMT 3Server: Apache/2.2.22 (Ubuntu) 4Content-Type: text/html

La respuesta contiene el recurso solicitado. La primera línea es muy importante y contiene el estado o status de la respuesta. En este caso es 200, es decir todo está ok.

Los códigos de estado HTTP,puedes leer más al respecto aquí, entregan metadatos en la respuesta al estado de los recursos solicitados. Son parte de lo que hace de la Web una plataforma para construir sistemas distribuidos. Se dividen en las siguientes categorías:

  • 1xx – Metadata
  • 2xx – Todo esta bien
  • 3xx – Redirección
  • 4xx – Cliente hizo algo mal
  • 5xx – Servidor hizo algo mal