यूज़र-एजेंट रिडक्शन ऑरिजिन ट्रायल

उपयोगकर्ता-एजेंट के ज़रिए जानकारी इकट्ठा करने की समस्या को कम करने की सुविधा, उपयोगकर्ता-एजेंट (यूए) स्ट्रिंग में मौजूद जानकारी को कम करके, पैसिव ऑनलाइन ट्रैकिंग के प्लैटफ़ॉर्म को कम करने की कोशिश है. इस स्ट्रिंग में सिर्फ़ ब्राउज़र के ब्रैंड और अहम वर्शन, डेस्कटॉप या मोबाइल के बीच के अंतर, और उस प्लैटफ़ॉर्म की जानकारी शामिल की जाती है जिस पर वह चल रहा है. UA स्ट्रिंग को हर एचटीटीपी अनुरोध पर शेयर किया जाता है. साथ ही, ब्राउज़र से लोड किए गए सभी संसाधनों के लिए, JavaScript में इसे दिखाया जाता है. इसमें ब्राउज़र, उस पर चलने वाले प्लैटफ़ॉर्म, और उसकी सुविधाओं के बारे में अहम जानकारी होती है. User-Agent क्लाइंट के संकेत (UA-CH), पूरी UA स्ट्रिंग जैसी ही जानकारी दे सकते हैं. साथ ही, साइटों को सिर्फ़ उस UA जानकारी का अनुरोध करने की अनुमति देते हैं जिसकी उन्हें ज़रूरत होती है.

Chrome 95 के बीटा वर्शन से, हम उपयोगकर्ता-एजेंट स्ट्रिंग को छोटा करने के लिए, ऑरिजिन ट्रायल शुरू करेंगे. इससे साइटों को, छोटी UA स्ट्रिंग पाने के लिए ऑप्ट-इन करने की सुविधा मिलेगी. इससे साइटों को, Chrome में कम किए गए UA के डिफ़ॉल्ट व्यवहार से पहले, समस्याओं का पता लगाने और उन्हें ठीक करने में मदद मिलेगी. UA को कम करने की प्रोसेस, 2022 की दूसरी तिमाही में शुरू होने वाली है. अगर आपको ऑरिजिन ट्रायल को, सभी लोगों के लिए लॉन्च होने से पहले, 95 बीटा वर्शन के उपयोगकर्ताओं पर टेस्ट करना है, तो Chrome 95 के रिलीज़ होने की तारीख (19 अक्टूबर, 2021 को शेड्यूल है) से पहले ऑप्ट इन करें और टेस्ट करें.

ऑरिजिन ट्रायल की खास जानकारी और इससे जुड़ी उम्मीदें यहां दी गई हैं. हमेशा की तरह, UA में कमी लाने के लिए किए जा रहे इस ट्रायल के दौरान, अगर आपके पास कोई सुझाव, शिकायत या समस्या है, तो हमें बताएं. इसके लिए, UA में कमी लाने के लिए बनाए गए GitHub रिपॉज़िटरी पर जाएं.

User-Agent क्या है?

उपयोगकर्ता एजेंट (UA) स्ट्रिंग को हर एचटीटीपी अनुरोध पर शेयर किया जाता है. साथ ही, इसे ब्राउज़र से लोड किए गए सभी संसाधनों के लिए JavaScript में दिखाया जाता है. इसमें ब्राउज़र और उस प्लैटफ़ॉर्म के बारे में अहम जानकारी होती है जिस पर वह काम कर रहा है.

यूज़र-एजेंट को कम क्यों किया जा रहा है?

उपयोगकर्ता-एजेंट के ज़रिए जानकारी इकट्ठा करने की समस्या को कम करने की सुविधा, Chrome ब्राउज़र में पैसिव ऑनलाइन ट्रैकिंग के प्लैटफ़ॉर्म को कम करने के लिए बनाई गई है. इसका एलान पहली बार जनवरी 2020 में किया गया था. UA स्ट्रिंग में मौजूद जानकारी को सिर्फ़ ब्राउज़र के ब्रैंड और अहम वर्शन, उसके डेस्कटॉप या मोबाइल डिवाइस के अंतर, और उस प्लैटफ़ॉर्म तक सीमित करने पर, अलग-अलग उपयोगकर्ताओं की पहचान करना मुश्किल हो जाता है.

वेब डेवलपर के लिए इसका क्या मतलब है?

साइटों को कम यूए स्ट्रिंग पाने के लिए तैयार रहना चाहिए. साथ ही, ऑरिजिन ट्रायल में हिस्सा लेना चाहिए. इस बारे में यहां ज़्यादा जानकारी दी गई है. उपयोगकर्ता एजेंट की कम की गई वैल्यू इनमें दिखेंगी:

  • User-Agent एचटीटीपी अनुरोध हेडर
  • navigator.userAgent JavaScript गैटर
  • navigator.platform JavaScript गैटर
  • navigator.appVersion JavaScript गैटर

कम किए गए User-Agent से शेयर की गई जानकारी के अलावा, क्लाइंट की ज़्यादा जानकारी पाने के लिए, साइटों को User-Agent के नए Client Hints एपीआई पर माइग्रेट करना होगा. माइग्रेशन की रणनीतियों के बारे में ज़्यादा जानकारी के लिए, उपयोगकर्ता एजेंट क्लाइंट हिंट पर माइग्रेट करना देखें.

उपयोगकर्ता-एजेंट को कम करने के प्लान में iOS और वेबव्यू शामिल नहीं हैं. इसलिए, उन प्लैटफ़ॉर्म को उपयोगकर्ता एजेंट की पूरी स्ट्रिंग मिलती रहेगी. इसकी मुख्य वजह यह है कि इन प्लैटफ़ॉर्म पर अब तक User-Agent क्लाइंट हिंट लागू नहीं किए गए हैं.

ऑरिजिन ट्रायल की सुविधा कैसे काम करती है?

यह ऑरिजिन ट्रायल, स्टैंडर्ड ऑरिजिन ट्रायल से थोड़ा अलग है. स्टैंडर्ड ऑरिजिन ट्रायल, सिर्फ़ रिस्पॉन्स में व्यवहार को कंट्रोल कर सकते हैं. उदाहरण के लिए, रिस्पॉन्स के JavaScript में एपीआई के ऐक्सेस को कंट्रोल करना. इस ट्रायल में, हमारा लक्ष्य सिर्फ़ JavaScript एपीआई में दी गई UA स्ट्रिंग में बदलाव करना नहीं है, बल्कि एचटीटीपी अनुरोध पर भेजे गए User-Agent हेडर में भी बदलाव करना है.

ऐसा करने के लिए, हम एक अस्थायी क्लाइंट हिंट तय कर रहे हैं, जिसका नाम Sec-CH-UA-Reduced है. अनुरोध में इसकी मौजूदगी से पता चलेगा कि User-Agent हेडर की वैल्यू में, कम की गई यूए स्ट्रिंग शामिल है. Sec-CH-UA-Reduced क्लाइंट हिंट, कम की गई UA स्ट्रिंग के साथ सिर्फ़ तब भेजा जाएगा, जब ऑरिजिन ट्रायल टोकन मान्य हो. ऑरिजिन ट्रायल की समयसीमा खत्म होने के बाद, Sec-CH-UA-Reduced क्लाइंट हिंट काम नहीं करेगा. ध्यान रखें कि जब तक Critical-CH header सेट नहीं किया जाता, तब तक पहले नेविगेशन अनुरोध को कम नहीं की गई User-Agent स्ट्रिंग ही मिलेगी.

एक ही ऑरिजिन के सब-सोर्स के अनुरोध, टॉप-लेवल के अनुरोध की तरह ही User-Agent स्ट्रिंग अपने-आप भेजेंगे. तीसरे पक्ष के ऑरिजिन के लिए सब-सोर्स के अनुरोधों में भी, टॉप-लेवल के अनुरोध जैसी ही उपयोगकर्ता-एजेंट स्ट्रिंग भेजी जाएगी. इसमें, ऑरिजिन ट्रायल टोकन मान्य होने पर, कम की गई यूए स्ट्रिंग भी शामिल होगी. हालांकि, इसके लिए ज़रूरी है कि अनुमतियों की नीति से इसकी अनुमति मिली हो.

मैं यूज़र-एजेंट रिडक्शन के ऑरिजिन ट्रायल में कैसे हिस्सा लेूं?

  1. ऑरिजिन ट्रायल के लिए रजिस्टर करने और अपने डोमेन के लिए टोकन पाने के लिए, उपयोगकर्ता एजेंट को छोटा करने की सुविधा के ट्रायल पेज पर जाएं.

  2. अपने एचटीटीपी रिस्पॉन्स हेडर अपडेट करें:

    1. अपने एचटीटीपी रिस्पॉन्स हेडर में Origin-Trial: <ORIGIN TRIAL TOKEN> जोड़ें. <ORIGIN TRIAL TOKEN> में वह टोकन होता है जो आपको ऑरिजिन ट्रायल के लिए रजिस्टर करते समय मिला था.
    2. अपने एचटीटीपी रिस्पॉन्स हेडर में Accept-CH: Sec-CH-UA-Reduced जोड़ें.
    3. Accept-CH सेट करने पर, ऑरिजिन को किए जाने वाले अगले अनुरोधों पर सिर्फ़ छोटी User-Agent स्ट्रिंग भेजी जाएगी. छोटी User-Agent स्ट्रिंग के साथ पहला नेविगेशन अनुरोध फिर से भेजने के लिए, Accept-CH और Origin-Trial हेडर के साथ-साथ अपने एचटीटीपी रिस्पॉन्स हेडर में Critical-CH: Sec-CH-UA-Reduced जोड़ें.
    4. ध्यान दें: अगर रिस्पॉन्स हेडर में मान्य Origin-Trial टोकन और Accept-CH: Sec-CH-UA-Reduced शामिल है, तो सभी सब-रिसॉर्स अनुरोध (उदाहरण के लिए, इमेज या स्टाइलशीट के लिए) और सब-नेविगेशन (उदाहरण के लिए, iframes), कम की गई UA स्ट्रिंग भेजेंगे. भले ही, उन अनुरोधों के ऑरिजिन को ऑरिजिन ट्रायल में रजिस्टर न किया गया हो.
  3. अपनी वेबसाइट को Chrome M95 (या उसके बाद के वर्शन) में लोड करें और कम की गई UA स्ट्रिंग पाना शुरू करें.

  4. UA में होने वाले बदलावों से जुड़ी किसी भी समस्या या सुझाव को UA रिडक्शन GitHub रिपॉज़िटरी पर सबमिट करें.

  5. सोर्स कोड के साथ-साथ, ऑरिजिन ट्रायल के बारे में जानने के लिए, https://uar-ot.glitch.me/ पर जाएं.

तीसरे पक्ष के एम्बेड के तौर पर, ऑरिजिन ट्रायल में कैसे हिस्सा लें?

Chrome 96 से, तीसरे पक्ष के एम्बेड (उदाहरण के लिए, किसी दूसरी साइट में मौजूद iframe) ऑरिजिन ट्रायल में हिस्सा ले सकते हैं. इसके लिए, शीर्ष लेवल की साइट को रजिस्टर करने की ज़रूरत नहीं है.

तीसरे पक्ष के एम्बेड के तौर पर रजिस्टर करने के लिए:

  1. उपयोगकर्ता एजेंट को छोटा करने के लिए ट्रायल पर जाएं और रजिस्टर करें पर क्लिक करें.
  2. टोकन बनाते समय, Third-party matching चेकबॉक्स को चुनना न भूलें.
  3. तीसरे पक्ष के एम्बेड से छोटा User-Agent हेडर पाने के लिए, एचटीटीपी रिस्पॉन्स हेडर अपडेट करें.
  4. JavaScript एपीआई में छोटी User-Agent स्ट्रिंग पाने के लिए, ट्रायल टोकन को JavaScript का इस्तेमाल करके इंजेक्ट किया जाना चाहिए.

तीसरे पक्ष के एम्बेड किए गए वीडियो पर ऑरिजिन ट्रायल चलाने के बारे में कुछ अहम बातें:

  • Critical-CH को तीसरे पक्ष के एम्बेड के लिए तय नहीं किया जा सकता. इसलिए, पहला नेविगेशन छोटी UA स्ट्रिंग नहीं भेजेगा. हालांकि, तीसरे पक्ष के एम्बेड के सब-रिसॉर्स के अनुरोध, छोटी UA स्ट्रिंग भेजेंगे.
  • अगर तीसरे पक्ष के एम्बेड किए गए कॉन्टेंट के ऑरिजिन के लिए, ऑरिजिन ट्रायल की पुष्टि की जाती है, तो टॉप-लेवल नेविगेशन में उसी ऑरिजिन के लिए किए गए अनुरोधों के बाद, कम की गई UA स्ट्रिंग भेजी जाएगी. इसलिए, हमारा सुझाव है कि टॉप-लेवल और एम्बेड करने के अनुरोध, दोनों के लिए ऑरिजिन ट्रायल में हिस्सा लेने की संख्या बढ़ाएं.
  • अगर उपयोगकर्ता एजेंट ने तीसरे पक्ष की कुकी बंद कर दी हैं, तो तीसरे पक्ष के एम्बेड किए गए अनुरोधों में User-Agent हेडर के लिए ऑरिजिन ट्रायल काम नहीं करेगा. हालांकि, JavaScript API को अब भी छोटी UA स्ट्रिंग मिलेगी.

मैं इस बात की पुष्टि कैसे करूं कि ऑरिजिन ट्रायल काम कर रहा है?

यह पुष्टि करने के लिए कि ऑरिजिन ट्रायल काम कर रहा है, अनुरोध हेडर की जांच करें और इन बातों को पक्का करें:

  1. User-Agent हेडर में, कम किया गया वर्शन शामिल होता है. कम की गई UA स्ट्रिंग के सैंपल की सूची देखें. यह पता करने का एक तरीका यह है कि Chrome के माइनर वर्शन की स्ट्रिंग में 0.0.0 है या नहीं.
  2. Sec-CH-UA-Reduced हेडर को ?1 पर सेट किया गया है.

मैं यूज़र-एजेंट रिडक्शन ऑरिजिन ट्रायल में हिस्सा लेना कैसे बंद करूं?

मुफ़्त में आज़माने की अवधि के दौरान, किसी भी समय इस प्रोग्राम से बाहर निकला जा सकता है. साथ ही, उपयोगकर्ता एजेंट की पूरी स्ट्रिंग भी पाई जा सकती है. इस सुविधा से ऑप्ट आउट करने के लिए:

  1. अपने एचटीटीपी रिस्पॉन्स में ऐसा Accept-CH हेडर भेजें जिसमें Sec-CH-UA-Reduced शामिल न हो. ध्यान दें: अगर आपकी साइट किसी दूसरे क्लाइंट के सुझाव का अनुरोध नहीं करती है, तो खाली वैल्यू के साथ Accept-CH का इस्तेमाल करके, यह काम किया जा सकता है.
  2. अपने एचटीटीपी रिस्पॉन्स से, यूज़र-एजेंट रिडक्शन की सुविधा के ट्रायल के लिए Origin-Trial हेडर हटाएं.
  3. अगर यह सेट है, तो अपने एचटीटीपी रिस्पॉन्स में Critical-CH हेडर से Sec-CH-UA-Reduced हटाएं.

ऑरिजिन ट्रायल की अवधि कितनी होगी?

UA Reduction का ऑरिजिन ट्रायल कम से कम छह महीने तक चलेगा. यह ट्रायल, Chrome के छह माइलस्टोन के हिसाब से होगा. ऑरिजिन ट्रायल, M95 में दिखेगा और M101 तक खत्म हो जाएगा. इसके बाद, Chrome, ऑरिजिन ट्रायल से मिले सुझावों और राय का आकलन करेगा. इसके बाद, रोल आउट प्लान के मुताबिक, उपयोगकर्ता एजेंट की छोटी स्ट्रिंग को धीरे-धीरे भेजना शुरू किया जाएगा. अगर किसी साइट को ज़्यादा समय चाहिए, तो वह ऑरिजिन ट्रायल के बाद, बंद होने की प्रक्रिया के लिए ऑप्ट-इन कर सकती है. इससे, उसे कम से कम छह महीने तक पूरी UA स्ट्रिंग ऐक्सेस करने की अनुमति मिलेगी. इस सुविधा के बंद होने से पहले, इसे आज़माने के बारे में ज़्यादा जानकारी उपलब्ध कराई जाएगी.

मैं यूज़र-एजेंट रिडक्शन ऑरिजिन ट्रायल के बारे में सुझाव/राय या शिकायत कैसे सबमिट करूं?

UA में होने वाले बदलावों से जुड़ी किसी भी समस्या या सुझाव को UA रिडक्शन GitHub रिपॉज़िटरी पर सबमिट करें.