Accept-Language HTTP başlığı, istemcinin hangi dilleri anlayabildiğini ve hangi dil türünün tercih edildiğini bildirir. (Burada dil derken programlama dili değil, İngilizce gibi doğal dillerden bahsediyoruz.) Sunucu içerik görüşmesi kullanarak bu önerilerden birini seçip kullanır ve
Content-Language yanıt başlığı aracılığıyla istemciye seçtiği dili bildirir. Tarayıcılar kullanıcı arayüzü diline bakarak bu başlığa uygun değerleri verir ve kullanıcı bunu değiştirebilse de bu pek sık olmaz (ve parmak izine neden olduğundan hoş karşılanmaz).
Bu başlık, sunucunun kullanıcı tarafından bilinçli olarak belirtilmiş bir URL gibi herhangi bir yoldan dil berlirleme imkanı olmadığında kullanması için verilen bir ipucudur. Sunucunun asla bilinçli bir seçimi geçersiz kılmaması önerilmektedir.
Accept-Language içeriği genellikle kullanıcının kontrolünde değildir (örneğin seyahat ederken başka bir ülkede bir internet kafeyi kullanmak gibi); kullanıcı kendi kullanıcı arayüzünün dili dışında bir dilde de sayfayı görüntülemek isteyebilir.
Eğer sunucu eşleşen hiçbir dilde hizmet veremiyorsa, teoride bir
406 (Kabul edilemez) hata kodunu döndürebilir. Ancak, daha iyi bir kullanıcı deneyimi sağlanması için bu nadiren yapılır ve bu durumda genellikle
Accept-Language başlığı görmezden gelinir.
|Başlık türü||Request header|
|Forbidden header name||hayır|
|CORS-safelisted request-header||evet|
Sözdizimi
Accept-Language: <language> Accept-Language: * // quality value sözdizimi ile ağırlıklandırılmış birden fazla dil var: Accept-Language: fr-CH, fr;q=0.9, en;q=0.8, de;q=0.7, *;q=0.5
Direktifler
<language>
-
Bir dil etiketi (bazen "yerel ayar kimliği" olarak da adlandırılır). Bu direktif 2-3 harften oluşan ve dili demsil eden bir temel dil etiketidir, isteğe bağlı olarak ardından
'-'ile ayrılan ek alt etiketler gelebilir. En sık kullanılan ek bilgi ülke veya bölge varyantı (
'en-US'veya
'fr-CA'gibi) ya da kullanılacak alfabe türüdür (
'sr-Latn'gibi). Yazım türü (
'de-DE-1996') gibi diğer varyantlar genellikle bu başlık kapsamında kullanılmaz.
*
- Herhangi bir dil;
'*'joker karakter olarak kullanılır.
;q=(q-faktör ağırlıklandırması)
- Tercih sırasına göre yerleştirilen herhangi bir değer, ağırlık denilen göreceli bir quality value ile ifade edilir.
Örnekler
Accept-Language: de Accept-Language: de-CH Accept-Language: en-US,en;q=0.5
Özellikler
|Özellik||Başlık|
|RFC 7231, section 5.3.5: Accept-Language||Hypertext Transfer Protocol (HTTP/1.1): Anlambilim ve Bağlam|
|BCP 47||Dilin Belirlenmesi için Etiketler|
Tarayıcı uyumluluğu
Bu sayfadaki uyumluluk tablosu yapılandırılmış verilerden üretilmiştir. Verilere katkıda bulunmak istiyorsanız, lütfen https://github.com/mdn/browser-compat-data adresini ziyaret edin ve bize bir çekme isteği gönderin.
|Desktop||Mobile|
|Chrome Full support Yes||Edge Full support Yes||Firefox Full support Yes||IE Full support Yes||Opera Full support Yes||Safari Full support Yes||WebView Android Full support Yes||Chrome Android Full support Yes||Firefox Android Full support Yes||Opera Android Full support Yes||Safari iOS Full support Yes||Samsung Internet Android Full support Yes|
Legend
- Full support
- Full support