Negociació de contingut

De Viquipèdia
Dreceres ràpides: navegació, cerca

La negociació de contingut és un mecanisme definit a l'especificació HTTP que permet que se serveixin diferents versions d'un document (o de forma més general, d'un recurs) des d'un mateix URL, perquè així un agent d'usuari rebi la versió que s'escau més a les seues capacitats o preferències.

Això s'havia fet servir per a servir imatges tant en format GIF com en PNG, per tal que els navegadors que encara no poguessin tractar els PNG, poguessin mostrar la versió en format GIF de la imatge. L'agent d'usuari envia una capçalera HTTP (Accept) amb els diferents tipus MIME que entén juntament amb indicacions de com ho fa. Llavors, el servidor respon amb la versió que millor s'escauria a les necessitats de l'agent. D'aquesta manera, un recurs pot estar disponible en diferents representacions. Per exemple, pot estar-ho en diferents llengües o proporcionar diferents suports o tipus de fitxer. Una manera de seleccionar l'opció més adequada és oferir una pàgina índex a l'usuari i deixar-lo que esculli. No obstant això, sovint el mateix servidor permet fer aqueixa tria automàticament. Això és possible perquè els navegadors mateixos envien les preferències. Un exemple n'és la llengua. Per a demanar només representacions en català, en tant que disponibles, el navegador enviaria:

Accept-Language: ca

Un exemple de sol·licitud més complex seria la d'un navegador configurat per a acceptar català i àrab, però amb preferència pel català; acceptar diferents tipus de fitxer, però preferint HTML davant de text net o d'altres; i preferint GIF or JPEG davant d'altres tipus, però podent-ne acceptar d'altres en darrera instància:

Accept-Language: ca; q=1.0, ar; q=0.5
         Accept: text/html; q=1.0, text/*; q=0.8, image/gif; q=0.6, image/jpeg; q=0.6, image/*; q=0.5, */*; q=0.1

Vegeu també[modifica | modifica el codi]

Enllaços externs[modifica | modifica el codi]

Referències[modifica | modifica el codi]

  • L'original d'aquest article es basa en aquesta pàgina, amb copyright de the Apache Foundation però publicat sota una llicència lliure.