Muy bien, hablemos ahora de las cabeceras HTTP. Te explico, las cabeceras HTTP son componentes
esenciales, tanto a nivel de las solicitudes y respuestas, en servicios que empleen este
protocolo, o sea, HTTP, y básicamente transmiten información adicional, entre el cliente y
el servidor. Cabeceras que podemos ver por ejemplo si capturamos una petición, digamos
por ejemplo con algún proxy. Y estas cabeceras son varias, pero vamos a comentar las principales
Tenemos la cabecera host, que indica el servidor, al cual la solicitud está siendo enviada
User agent, que revela información sobre el navegador del cliente, y el sistema operativo
que está utilizando, entre otros datos. Que si ya habrás visto algunos cursos en JICSEC
sabrás que comentamos mucho sobre esta cabecera, porque hay ciertos métodos para poder manipularla
y así hacerle creer al servidor de destino que estamos usando, por ejemplo un sistema
operativo o un navegador que realmente no estamos usando, y así incrementar un poco
nuestra privacidad. Pero bueno, me desvío, sigamos. Tenemos también la cabecera C, que
especifica los tipos de medios que el navegador del cliente puede procesar. Básicamente
esto le ayuda al servidor de destino a decidir en qué formato nos va a devolver la respuesta
para que nosotros podamos comprenderla. Siguiente, ACEP Language, que indica el idioma
preferido por nosotros, permitiendo que el servidor nos responda, con un recurso en el
idioma apropiado, si corresponde. Siguiente, ACEP Encoding, que notifica al servidor qué tipo de codificación acepta nuestro navegador. Por ejemplo, JC, BodyFlate, son
algoritmos de compresión, que permiten una transferencia de datos más rápida. Siguiente, Content Type, que le informa al servidor sobre el tipo de datos que estamos
enviando en el cuerpo de la solicitud. Siguiente, Content Length, que muestra la
longitud del cuerpo de la solicitud, de forma predeterminada en bytes. Siguiente, Cookie, que básicamente contiene las cookies, que se van a enviar al servidor
Siguiente, Connection, que controla si la conexión de red permanecerá abierta, después
de que finalice la transacción HTTP actual, es decir, la que establecimos cuando enviamos
entre otros datos, esta cabecera. Siguiente, Referrer, esta cabecera indica la URL de la página anterior desde la que se siguió el enlace a la solicitud, y generalmente
se usa para hacer seguimiento, y en circunstancias, digamos un poco más éticas, hacer análisis
de la web, y digo más éticas porque ahí ya puedes intuir cómo se puede usar esto
Siguiente, Authorization, que contiene las credenciales para autenticar un usuario en un servidor. Siguiente, Cache Control, que básicamente
son directivas para los mecanismos de caché, entre ambas partes, tanto nosotros desde el
cliente, digamos con el navegador, y el servidor, a nivel de cómo influye la configuración
que tengamos, sobre cómo se almacena y se sirve el contenido, desde la caché
Siguiente, XForwarder4, que se utiliza para identificar la dirección IP original del
cliente, o sea de nosotros, cuando nos conectamos a través de por ejemplo un proxy, o un balanceador
de carga. Adicionalmente, a esta también está Zcookie, que nos sirve para crear cookies como tal. Y ya por último, entrando en cabeceras un
poco, digamos más orientadas a la protección, podrías conseguirte por ejemplo XCrossScriptingProtection
que básicamente esta cabecera es utilizada para controlar la función de protección de scripts, pero sobre todo aplicable en navegadores que son más antiguos, y que de forma nativa
pues… son una caca, básicamente, a nivel de seguridad. Y te digo, no solamente existen estas cabeceras, existen muchísimas más, pero si comentamos
todavía ya terminamos el martes. Pero con estas que te comenté podemos continuar el curso, y es lo que me interesa. Así que con esto explicado, continuemos