Ce sunt Content-Language și Accept-Language? (Programare, Http Headers, Cerere, Răspuns)

amatori a intrebat.

Am văzut că anteturile HTTP de Content-Language și Accept-Language, , ar putea cineva să explice la ce servesc și care este diferența dintre ele? Am un site multilingv și mă întrebam dacă ar trebui să le setez pe ambele la limba curentă selectată de site, de către utilizator.

Comentarii

  • Probabil că nu ar trebui să vă deranjați să adăugați Content-Language la site-ul dvs., deoarece browserele nu le folosesc în mod normal. Cu toate acestea, puteți utiliza atributul lang în HTML. –  > Por james.garriss.
  • Citește și: „Ați citit și dumneavoastră: wiki.whatwg.org/wiki/Content-Language –  > Por Christophe Roussy.
5 răspunsuri

Content-Language, , un antet de entitate, este utilizat pentru a descrie limba (limbile) destinată (destinate) publicului, astfel încât să permită unui utilizator să facă diferența în funcție de limba preferată de acesta. Antetele de entitate sunt utilizate atât în cererile, cât și în răspunsurile HTTP.1

Accept-Language, , un antet HTTP de cerere, anunță limbile pe care clientul este capabil să le înțeleagă și care este varianta locală preferată.2 Pot exista mai multe limbi, fiecare cu o valoare opțională de pondere sau „calitate”. De exemplu:

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

(Ponderea implicită este 1, deci acest lucru este echivalent cu da;q=1, en-GB;q=0.8, en;q=0.7).

Va trebui să analizați valorile și ponderile pentru a vedea dacă este disponibilă o traducere adecvată și să oferiți utilizatorului traducerea în limba cu cea mai mare pondere preferată.

Se recomandă să oferiți utilizatorilor o alternativă, cum ar fi o valoare setată de cookie, pentru a forța o anumită limbă pentru site-ul dumneavoastră. Acest lucru se datorează faptului că unii utilizatori pot dori să vadă site-ul dvs. într-o anumită limbă, fără a-și schimba preferințele de acceptare a limbii.

Comentarii

  • O ușoară modificare a răspunsului dumneavoastră: Content-Language este un antet de conținut, deci se aplică conținutului, indiferent dacă este transmis de la server la client sau de la client la server. –  > Por james.garriss.
  • RFC2616: „Câmpul Content-Language entity-header descrie limba (limbile) naturală (naturale) a publicului vizat pentru entitatea inclusă. Cu toate acestea, doar pentru că într-o entitate sunt prezente mai multe limbi nu înseamnă că aceasta este destinată unor audiențe lingvistice multiple. Un exemplu ar fi un abecedar de limbă pentru începători, cum ar fi „A First Lesson in Latin”, care este în mod clar destinat să fie utilizat de un public care știe să scrie în engleză. În acest caz, Content-Language ar trebui să includă în mod corespunzător doar „en”.” R. Fielding, UC Irvine, J. Gettys, J. Mogul, H. Frystyk, L. Masinter, P. Leach, T. Berners-Lee; 1999. –  > Por Ucho.
  • Deci, care nu sunt în mod cert limbi de pe pagină. A se vedea RFC 2616 secțiunea 14.12. –  > Por Ucho.
D.Shawley

Content-Language descrie limba pentru care este destinat un anumit conținut. Accept-Language este lista de limbi în care un agent utilizator dorește să fie redactat conținutul. Cel mai bun mod de a ne gândi la aceasta este că Content-Language descrie conținutul și Accept-Language transmite o preferință.

user539810

Content-Language este limba paginii pe care o serviți.Accept-Language este o listă de limbi pe care PREFERĂ să le acceptați.

Rana Prathap

Câmpul de antet al entității Content-Language descrie limba (limbile) naturală (naturale) a publicului căruia îi este destinată entitatea inclusă. Rețineți că este posibil să nu fie echivalentă cu toate limbile utilizate în corpul entității.

Câmpul Accept-Language request-header restricționează setul de limbi naturale care sunt preferate ca răspuns la cerere.

http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html

georgeawg

Câmpul Content-Language entity header este utilizat pentru a descrie limba (limbile) destinată (destinate) publicului, astfel încât să permită diferențierea în funcție de limba preferată de utilizator.

Header type                     Entity header
Forbidden header name         no
CORS-safelisted response-header   yes
CORS-safelisted request-header    yes

MDN Web Reference – Antetele HTTP – Content-Language (Limba de conținut)

Adresa Accept-Language request HTTP header anunță care sunt limbile pe care clientul este capabil să le înțeleagă și care este varianta locală preferată. (Prin limbi, ne referim la limbile naturale, cum ar fi engleza, și nu la limbajele de programare).

Header type                     Request header
Forbidden header name         no
CORS-safelisted request-header    yes

MDN Web Reference – Antetele HTTP – Accept-Language (Accept-Language)