¿Qué es q=0,5 en los encabezados HTTP Aceptar*?

Resuelto kolypto asked hace 12 años • 3 respuestas
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7

¿ Qué q=%fsignifican estos?

kolypto avatar Dec 18 '11 23:12 kolypto
Aceptado

A esto se le llama factor de calidad relativa . Especifica qué idioma preferiría el usuario, en una escala de 0 a 1, como se puede ver en la Especificación HTTP/1.1, §14.4 :

A cada rango de idiomas PUEDE recibir un valor de calidad asociado que representa una estimación de la preferencia del usuario por los idiomas especificados por ese rango. El valor de calidad predeterminado es "q=1". Por ejemplo,

  Accept-Language: da, en-gb;q=0.8, en;q=0.7

significaría: "Prefiero el danés, pero aceptaré el inglés británico y otros tipos de inglés".

 avatar Dec 18 '2011 16:12

Se denomina factor de calidad relativa en la especificación:

Cada rango de medios PUEDE ir seguido de uno o más parámetros de aceptación, comenzando con el parámetro "q" para indicar un factor de calidad relativo. El primer parámetro "q" (si lo hay) separa los parámetros del rango de medios de los parámetros de aceptación. Los factores de calidad permiten al usuario o agente de usuario indicar el grado relativo de preferencia por ese rango de medios, utilizando la escala qvalue de 0 a 1 (sección 3.9). El valor predeterminado es q=1.

...

El ejemplo

Accept: audio/*; q=0.2, audio/basic

DEBE interpretarse como "Prefiero audio/básico, pero envíame cualquier tipo de audio si es el mejor disponible después de una rebaja del 80% en la calidad".

Ver también:

HTTP/1.1: Definiciones de campos de encabezado

Sebastian Paaske Tørholm avatar Dec 18 '2011 16:12 Sebastian Paaske Tørholm