सामग्री-भाषा और स्वीकार-भाषा क्या हैं?


82

मैंने HTTP हेडर देखे हैं Content-Languageऔर Accept-Language, क्या कोई समझा सकता है कि ये क्या हैं और उनके बीच अंतर क्या है? मेरे पास एक बहुभाषी साइट है और सोचता हूं कि क्या मुझे उपयोगकर्ता द्वारा दोनों वर्तमान साइटों को चुना जाना चाहिए।


संभवतः आपको अपनी साइट पर सामग्री-भाषा जोड़ने से परेशान नहीं होना चाहिए, क्योंकि ब्राउज़र आमतौर पर उनका उपयोग नहीं करते हैं। हालाँकि, आप अपने HTML में lang विशेषता का उपयोग कर सकते हैं।
james.garriss

जवाबों:


105

Content-Language, एक इकाई हेडर, दर्शकों के लिए अभिप्रेत भाषा (एस) का वर्णन करने के लिए उपयोग किया जाता है, ताकि यह उपयोगकर्ता को अपनी पसंदीदा भाषा के अनुसार अंतर करने की अनुमति दे सके। इकाई हेडर दोनों HTTP अनुरोधों और प्रतिक्रियाओं में उपयोग किए जाते हैं। 1

Accept-Languageएक अनुरोध HTTP हेडर, विज्ञापित करता है कि ग्राहक किन भाषाओं को समझने में सक्षम है, और कौन सा स्थानीय संस्करण पसंद किया जाता है। 2 कई भाषाएं हो सकती हैं, जिनमें से प्रत्येक एक वैकल्पिक वजन या 'गुणवत्ता' मान है। उदाहरण के लिए:

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

(डिफ़ॉल्ट वजन 1 है, इसलिए यह इसके बराबर है da;q=1, en-GB;q=0.8, en;q=0.7)।

यदि आप एक उपयुक्त अनुवाद उपलब्ध है, और यह देखने के लिए आपको मानों और मानों को पार्स करना है, और उपयोगकर्ता को सबसे उच्च भाषा भार में अनुवाद प्रदान करना है।

यह अनुशंसा की जाती है कि आप उपयोगकर्ताओं को अपनी साइट के लिए एक निश्चित भाषा को बाध्य करने के लिए एक कुकी सेट मान जैसे विकल्प दें। ऐसा इसलिए है क्योंकि कुछ उपयोगकर्ता अपनी साइट को अपनी भाषा स्वीकृति वरीयताओं को बदले बिना एक निश्चित भाषा में देखना चाहते हैं।


13
आपके उत्तर के लिए थोड़ा सा मुड़ें: कंटेंट-लैंग्वेज एक कंटेंट हेडर है, इसलिए यह कंटेंट पर लागू होता है चाहे सर्वर से क्लाइंट या क्लाइंट से सर्वर तक।
james.garriss

1
RFC2616: “सामग्री-भाषा इकाई-हेडर फ़ील्ड संलग्न इकाई के लिए इच्छित दर्शकों की प्राकृतिक भाषा (ओं) का वर्णन करता है। हालांकि, सिर्फ इसलिए कि एक इकाई के भीतर कई भाषाएं मौजूद हैं इसका मतलब यह नहीं है कि यह कई भाषाई दर्शकों के लिए है। एक उदाहरण एक शुरुआती भाषा का प्राइमर होगा, जैसे "लैटिन में एक पहला पाठ," जिसका स्पष्ट रूप से एक अंग्रेजी-साहित्यिक दर्शकों द्वारा उपयोग करने का इरादा है। इस मामले में, सामग्री-भाषा केवल "एन" को शामिल करेगी। आर। फील्डिंग, यूसी इरविन, जे। गेटीज, जे। मोगुल, एच। क्रिस्टेलेक, एल। मेसेंटर, पी। लीच, टी। बर्नर्स-ली; 1999.
उचो

तो यह निश्चित रूप से पृष्ठ पर भाषाएँ नहीं हैं। RFC 2616 धारा 14.12 देखें ।
उचो

20

Content-Languageउस भाषा का वर्णन करता है जो किसी विशेष सामग्री के लिए अभिप्रेत है। Accept-Languageउन भाषाओं की सूची है जो एक उपयोगकर्ता एजेंट सामग्री चाहता है। इसके बारे में सोचने का सबसे अच्छा तरीका यह है कि Content-Languageसामग्री का वर्णन करता है और Accept-Languageएक प्राथमिकता देता है।



5

सामग्री-भाषा इकाई-हेडर फ़ील्ड संलग्न इकाई के लिए इच्छित दर्शकों की प्राकृतिक भाषा (ओं) का वर्णन करता है। ध्यान दें कि यह इकाई-निकाय के भीतर उपयोग की जाने वाली सभी भाषाओं के बराबर नहीं हो सकता है।

स्वीकार-भाषा अनुरोध-हेडर फ़ील्ड प्राकृतिक भाषाओं के सेट को प्रतिबंधित करता है जिन्हें अनुरोध के जवाब के रूप में पसंद किया जाता है

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


0

Content-Language इकाई हैडर , भाषा (ओं) का वर्णन करने के जनता के लिए बनाई इस्तेमाल किया इतना है कि यह एक उपयोगकर्ता उपयोगकर्ताओं की अपनी पसंद की भाषा के अनुसार अलग करने के लिए अनुमति देता है।

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

- एमडीएन वेब संदर्भ - एचटीटीपी हेडर - सामग्री-भाषा

Accept-LanguageHTTP शीर्ष लेख का अनुरोध यह दर्शाता है कि ग्राहक किन भाषाओं को समझने में सक्षम है, और कौन सा स्थानीय संस्करण पसंद किया जाता है। (भाषाओं से हमारा मतलब प्राकृतिक भाषाओं से है, जैसे कि अंग्रेजी और प्रोग्रामिंग भाषाओं से नहीं।)

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

- एमडीएन वेब संदर्भ - एचटीटीपी हेडर - स्वीकार-भाषा

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.