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
Co oznaczają te „q =% f”?
Odpowiedzi:
Nazywa się to względnym współczynnikiem jakości . Określa preferowany język użytkownika, w skali od 0 do 1, jak widać w specyfikacji HTTP / 1.1, §14.4 :
Każdy zakres językowy MOŻE mieć przypisaną wartość jakości, która reprezentuje oszacowanie preferencji użytkownika w zakresie języków określonych w tym zakresie. Wartością domyślną jest „q = 1”. Na przykład,
Accept-Language: da, en-gb;q=0.8, en;q=0.7
oznaczałoby: „Wolę duński, ale akceptuję brytyjski angielski i inne rodzaje angielskiego”.
Nazywa się to względnym współczynnikiem jakości w specyfikacji:
Po każdym zakresie mediów MOŻE następować jeden lub więcej parametrów akceptacji, zaczynając od parametru „q” wskazującego względny współczynnik jakości. Pierwszy parametr „q” (jeśli istnieje) oddziela parametr (y) zakresu mediów od parametrów accept-params. Czynniki jakości pozwalają użytkownikowi lub agentowi użytkownika wskazać względny stopień preferencji dla tego zakresu mediów przy użyciu skali qvalue od 0 do 1 (sekcja 3.9). Wartość domyślna to q = 1.
...
Przykład
Accept: audio/*; q=0.2, audio/basic
POWINIEN być interpretowane jako „Preferuję dźwięk / podstawowy, ale wyślij mi dowolny typ dźwięku, jeśli jest najlepszy z dostępnych po 80% obniżce jakości”.
Parametr jakości akceptacji języków można rozumieć następująco:
dołączając Accept-Language: pl_PL;q=0.8, en_US;q=0.2,
nagłówek do żądania, przekazujemy do serwera następujący komunikat
Serwer, proszę o dostarczenie mi polskiego tłumaczenia tej strony, ale proszę zrób to tylko wtedy, gdy jakość ma
>= %80%
związek z jakością. W przypadku jakości<80%
- nie mam nic przeciwko zdobyciu angielskiej wersji, bo nie ma to dla mnie znaczenia, bo i tak mówię po angielsku.
Na przykład jako dostawca treści strony internetowej możemy wprowadzić Accept-Language
parsowanie nagłówków w taki sposób, aby nasza witryna była odpowiednia dla obcokrajowców nie mówiących w ogóle po angielsku (wtedy nawet przetłumaczona nawigacja byłaby pomocna (strony, które mają przetłumaczoną tylko nawigację, powiedzmy , have q=0.1
), gdzie w pełni przetłumaczona treść ma q=0.9
iw pełni przetłumaczoną treść i zweryfikowana przez native speakerów mówiących zarówno w języku oryginalnym, jak i przetłumaczonym q=0.99
- ponieważ jest to jedyna możliwa sytuacja, gdy znaczenie treści jest w pełni przeniesione