Omet navegació

3. Etapes d'una transacció HTTP

Amb la intenció de conèixer amb més profunditat el protocol HTTP podem avaluar en què consisteix una transacció HTTP.

Cada vegada que un client fa una petició a un servidor, s’executen un seguit d'accions:

  1. Un usuari accedeix a una adreça d’Internet (URL) seleccionant un enllaç d’un document HTML o introduint-la directament a la barra de navegació d’un navegador web des de la perspectiva del client web. El client web descodifica l’adreça d’Internet (URL) separant-ne les diferents parts. És així com s'identifiquen el protocol d'accés, el node expressat amb el nom de domini o la seua adreça IP, el possible port opcional (el valor per defecte és el 80) i l'objecte del servidor requerit.
  2. S’obre una connexió TCP/IP amb el servidor cridant el port TCP corresponent. Es fa la petició. En conseqüència, s’envien l’ordre necessària (GET, POST, HEAD, etc.), l’adreça de l’objecte requerit (el contingut de l’adreça d’Internet del servidor), la versió del protocol HTTP utilitzada (en la major part de les ocasions és HTTP/1.0) i un conjunt variable d’informació que inclou dades sobre les capacitats del navegador web, dades opcionals per al servidor, etc.
  3. El servidor localitza el recurs sol·licitat i torna la resposta al client.
  4. Aquesta resposta consisteix en un codi d’estat i el tipus de dada amb extensions multipropòsit de correu d’Internet (MIME, Multipurpose Internet Mail Extension) de la informació de tornada, seguit de la mateixa informació.
  5. El client formata i mostra el recurs rebut.
  6. Es tanca la connexió TCP.

Aquest procés es repeteix en cada accés que es faça al servidor HTTP. Per exemple, si es recull un document HTML que conté quatre imatges, el procés de transició mostrat amb anterioritat es repeteix cinc vegades, és a dir, una pel document HTML i quatre per les imatges.

Etapes en la transició HTTP
Etapes en la transacció HTTP

Extensió MIME

El protocol HTML fou dissenyat per transportar per la xarxa arxius en format ASCII. Amb el progrés de les tecnologies i la inclusió de diferents tipus d’arxius en un format diferent a l’ASCII (imatges, vídeos, sons, etc.) en les aplicacions per Internet, va sorgir la necessitat de transformar aquests format a ASCII per la seva correcta recepció en el navegador web.

El 1992, es van crear els tipus MIME, que eren especificacions per donar format a missatges en un format diferent a l’ASCII perquè poguessin ser enviats i interpretats per Internet. Més endavant es van aplicar també als documents web.

Nomenclatura de tipus

MIME assigna un nom a cada tipus de dades. Els noms segueixen el següent format:

tipus / subtipus (tipus com a subtipus són cadenes de caràcters)

El tipus defineix la categoria general de les dades i el subtipus defineix un tipus més específic d'aquestes dades. El tipus tenir els següents valors:

  • text: Indica que el contingut és text pla. Exemples de subtipus: html, xml
  • multipart: Indica que té múltiples parts de dades independents. Exemples de subtipus: form-data, enviat a diari
  • message: Per encapsular un missatge existent. Per exemple quan volem respondre a un missatge de correu incorporant el missatge origen. Exemples de subtipus: partial, RFC822
  • image: Indica que és una imatge. Ex de subtipus: png, gif
  • audio: Indica que és un àudio. Exemples de subtipus: mpeg, avi
  • video: Indica que és un vídeo. Exemples de subtipus: mp4, 32kadpcm
  • application: Indica que es tracta de dades d'aplicació dels quals poden ser binaris. Exemples de subtipus: json, pdf