Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Javascript

जावास्क्रिप्ट कुकीज़:एक गाइड

कुकीज़ एक स्वादिष्ट नाश्ता और आधुनिक वेबसाइटों का एक महत्वपूर्ण हिस्सा दोनों हैं।

कुकीज़ आपको वेब ब्राउज़र में किसी उपयोगकर्ता के बारे में डेटा संग्रहीत करने की अनुमति देती हैं। कुकीज़ अक्सर प्रमाणीकरण सत्र जैसी जानकारी संग्रहीत करती हैं ताकि ब्राउज़र को याद रहे कि आपने वेब पेज पर लॉग इन किया है।

इस गाइड में, हम इस बारे में बात करने जा रहे हैं कि कुकीज़ क्यों मौजूद हैं, किस प्रकार की कुकीज़ हैं और जावास्क्रिप्ट में कुकीज़ का उपयोग कैसे करें। चलिए शुरू करते हैं!

ब्राउज़र कुकीज़ क्या हैं?

कुकीज़ टेक्स्ट के तार होते हैं जो किसी उपयोगकर्ता के बारे में उनके ब्राउज़र में जानकारी संग्रहीत करते हैं। इस विचार का नेतृत्व नेटस्केप ने किया था, जिसने 1990 के दशक में दुनिया के सबसे लोकप्रिय ब्राउज़रों में से एक को विकसित किया था। नेटस्केप ने कुकीज़ विकसित की ताकि यह पता लगाया जा सके कि कोई उपयोगकर्ता पहले ही उनकी साइट पर आ चुका है या नहीं। अगर उनके पास होता, तो इसका मतलब था कि उपयोगकर्ता शायद नेटस्केप के बारे में कुछ जानता था।

कुकीज़ में कम से कम एक नाम और एक मान फ़ील्ड होना चाहिए। नाम फ़ील्ड का उपयोग मान फ़ील्ड की सामग्री की पहचान करने के लिए किया जाता है। एक कुकी फ़ाइल पथ जैसी अतिरिक्त विशेषताओं को संग्रहीत कर सकती है और जब यह समाप्त हो जाती है, तो यह इस बात पर निर्भर करता है कि आप अपने अनुप्रयोगों में कुकीज़ का उपयोग कैसे कर रहे हैं।

यहां एक कुकी का उदाहरण दिया गया है:

नाम:प्रमाणीकरण मान:AUTHENTICATION_KEYडोमेन:careerkarma.com

कुकीज को की:वैल्यू पेयर में स्टोर किया जाता है। जब आप इस कुकी को देखते हैं, तो आपको निम्नलिखित दिखाई देंगे:

Authentication=AUTHENTICATION_KEY

यह कुकी आपके ब्राउज़र में AUTHENTICATION_KEY मान संग्रहीत करेगी। हर बार जब आप careerkarma.com डोमेन को एक्सेस करते हैं, तो वह कुकी साइट पर उपलब्ध करा दी जाएगी।

81% प्रतिभागियों ने कहा कि बूटकैंप में भाग लेने के बाद उन्हें अपनी तकनीकी नौकरी की संभावनाओं के बारे में अधिक आत्मविश्वास महसूस हुआ। आज ही एक बूटकैंप से मिलान करें।

बूटकैंप शुरू करने से लेकर अपनी पहली नौकरी खोजने तक, औसत बूटकैंप ग्रेड ने करियर संक्रमण में छह महीने से भी कम समय बिताया।

किसी साइट के लिए आप कितनी कुकी सेट कर सकते हैं, इसकी कोई सीमा नहीं है, लेकिन आप पाएंगे कि अधिकांश एप्लिकेशन को केवल कुछ सेट करने की आवश्यकता होती है, यदि कोई हो। अक्सर, कुकी का उपयोग उपयोगकर्ता के सत्र पर नज़र रखने के लिए किया जाता है।

ब्राउज़र कुकी पुनर्प्राप्त करें

JavaScript में document.cookie नाम का एक ऑब्जेक्ट होता है जो किसी साइट पर उपलब्ध सभी कुकी के बारे में जानकारी संग्रहीत करता है। कुकीज़ को सेट करने, अपडेट करने और हटाने के लिए, हमें इस ऑब्जेक्ट में हेरफेर करने की आवश्यकता है। कुकीज़ को पुनः प्राप्त करने के लिए, हम केवल इस ऑब्जेक्ट को कॉल कर सकते हैं:

console.log(document.cookie);

यह कोड ब्राउज़र में सेट की गई सभी कुकीज़ की सूची लौटाएगा। ऐसा करने के लिए कोई कस्टम फ़ंक्शन लिखे बिना इस सूची से किसी एक कुकी को पुनर्प्राप्त करने का कोई तरीका नहीं है।

ब्राउज़र कुकी कैसे सेट करें

मैं ब्राउज़र कुकी कैसे सेट करूं? ठीक है, एक बात आपको पहले से जाननी चाहिए:यकीनन यह आपकी खुद की कुकीज़ बेक करने की तुलना में आसान है।

मान लें कि हम किसी उपयोगकर्ता के ईमेल को कुकी में संग्रहीत करना चाहते हैं। हम इस जावास्क्रिप्ट कोड का उपयोग करके ऐसा कर सकते हैं:

document.cookie ="email=user@email.com";console.log(document.cookie);

यह कोड "ईमेल" नाम और "user@email.com" मान के साथ एक कुकी बनाता है। हमारा console.log() कथन निम्नलिखित लौटाता है:

email=user@email.com;

आप एक पथ भी निर्दिष्ट कर सकते हैं जिस पर कुकी उपलब्ध है:

document.cookie ="email=user@email.com; path=/dashboard";

यह कोड "ईमेल" कुकी को "/डैशबोर्ड" से शुरू होने वाले सभी पथों पर उपलब्ध कराएगा।

कुकी की समाप्ति तिथियां

डिफ़ॉल्ट रूप से, ब्राउज़र बंद होने पर कुकीज़ हटा दी जाती हैं। जब आप कुकी सेट कर रहे हों, तो आप वैकल्पिक रूप से एक समाप्ति तिथि जोड़ सकते हैं जो इस सेटिंग को ओवरराइड कर देगी:

<पूर्व>दस्तावेज़.कुकी ="ईमेल=user@email.com; समय सीमा समाप्त =बुधवार, 24 जून 2019 12:00:00 यूटीसी";

यह एक कुकी बनाएगा जो 24 जून, 2020 को दिन की शुरुआत में समाप्त होगी। आपकी समाप्ति तिथि UTC समय में निर्दिष्ट होनी चाहिए।

समाप्ति तिथि निर्धारित करने का एक सामान्य तरीका जावास्क्रिप्ट दिनांक ऑब्जेक्ट का उपयोग करना है, जो यूटीसी टाइमस्टैम्प देता है। 30 जून, 2020 को समाप्त होने वाली कुकी सेट इस कोड का उपयोग करेगी:

कॉन्स्ट एक्सपायरीडेट =नई तारीख (2020, 6, 30); document.cookie ="ईमेल =user@email.com; एक्सपायर =" + एक्सपायरीडेट + ";";

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

कॉन्स्ट एक्सपायरीडेट =24 * 60 * 60 * 2; document.cookie ="email=user@email.com; max-age=" + ExpiryDate + ";";

यह एक कुकी बनाएगा जो दो दिनों के बाद समाप्त हो जाएगी।

कुकी अपडेट करना और हटाना

कुकीज़ को अपडेट करने या हटाने के लिए कोई फ़ंक्शन उपयोग नहीं किया जाता है। इसके बजाय, आप "document.cookie" ऑब्जेक्ट में परिवर्तन करते हैं।

आप कुकी को उसी तरह अपडेट कर सकते हैं जैसे आपने उसे बनाया था:

document.cookie ="email=user@email.app;"

यह "ईमेल" के मूल्य को "user@email.com" से "user@email.app" में बदल देता है।

कुकी को हटाना एक समान दृष्टिकोण का उपयोग करता है। आपको बस उसी सिंटैक्स का उपयोग करना है जिसका उपयोग कुकी बनाने या अपडेट करने के लिए किया जाता है, लेकिन कुकी को निर्दिष्ट मान को हटा दें:

<पूर्व>दस्तावेज़.कुकी ="ईमेल =; समाप्त हो जाता है =बुध, 24 जून 2019 12:00:00 यूटीसी; पथ/;"

आपको यह सुनिश्चित करने के लिए एक पथ निर्दिष्ट करना चाहिए कि आपने सही कुकी हटा दी है।

कुकी के प्रकार

रसभरी। चॉकलेट चिप। ठगना। नहीं, उन प्रकार की कुकीज़ नहीं! ब्राउज़र में तीन मुख्य प्रकार की कुकीज़ होती हैं:सत्र, तृतीय-पक्ष और लगातार।

सत्र कुकीज़ कुकीज़ हैं जो ब्राउज़र बंद होने तक मौजूद रहती हैं। ये कुकीज़ हैं जो बिना किसी समाप्ति तिथि के सेट की जाती हैं, जैसे कि हमारे पहले उदाहरण में। यह ध्यान देने योग्य है कि कुछ डेवलपर्स "सत्र कुकी" शब्द का उपयोग किसी भी कुकी को संदर्भित करने के लिए करते हैं जो उपयोगकर्ता को प्रमाणित करता है, लेकिन सत्र कुकीज़ केवल कुकीज़ नहीं हैं जिनका उपयोग आप प्रमाणीकरण के लिए कर सकते हैं।

स्थायी कुकीज़ वे कुकीज़ हैं जो ब्राउज़र बंद होने के बाद भी मौजूद रहती हैं। ये एक निर्धारित समाप्ति तिथि वाली कुकीज़ हैं।

तृतीय-पक्ष कुकीज़ वे कुकीज़ हैं जो अन्य वेबसाइटों द्वारा बनाई गई हैं। इसका एक उदाहरण Google Analytics कुकीज है। यदि आप अपनी साइट पर Google Analytics इंस्टॉल करते हैं, तो एक्सटेंशन उपयोगकर्ताओं पर नज़र रखने के लिए कुकी सेट करने में सक्षम होगा।

निष्कर्ष

कुकीज़ ब्राउज़र में उपयोगकर्ता की जानकारी संग्रहीत करने का एक आसान तरीका है। उनका उपयोग अक्सर यह ट्रैक करने के लिए किया जाता है कि उपयोगकर्ता पहले किसी साइट पर गया है या नहीं और प्रमाणीकरण कुकीज़ को संग्रहीत करने के लिए उपयोग किया जाता है।

कुकीज़ के तीन मुख्य प्रकार हैं:सत्र, स्थायी और तृतीय-पक्ष। अपने स्वयं के अनुप्रयोगों के लिए, आप मुख्य रूप से सत्र और स्थायी कुकीज़ का उपयोग करने पर ध्यान केंद्रित करेंगे।


  1. एपेंड चाइल्ड जावास्क्रिप्ट:एक गाइड

    JavaScript appendChild () विधि एक नोड के अंत में एक आइटम जोड़ती है। appendChild () का उपयोग अक्सर आइटम को सूची में जोड़ने के लिए किया जाता है। यदि आप एक नोड में एक से अधिक आइटम जोड़ना चाहते हैं, तो आपको कई एपेंड चाइल्ड () स्टेटमेंट का उपयोग करना चाहिए। JavaScript एपेंड चाइल्ड का उपयोग कैसे करें क

  1. जावास्क्रिप्ट का उपयोग करके डोमेन-आधारित कुकीज़ कैसे बनाएं?

    डोमेन-आधारित कुकी बनाने के लिए, अपनी कुकी पर डोमेन और पथ विशेषता सेट करें, जैसे - domain=.example.com उदाहरण डोमेन-आधारित कुकी बनाने का तरीका जानने के लिए आप निम्न कोड चलाने का प्रयास कर सकते हैं - लाइव डेमो <html>    <head>       <script>     &nb

  1. जावास्क्रिप्ट कुकीज़ में कौन से रिकॉर्ड मौजूद हैं?

    आपका सर्वर विज़िटर के ब्राउज़र को कुकी के रूप में कुछ डेटा भेजता है। ब्राउज़र कुकी को स्वीकार कर सकता है। यदि ऐसा होता है, तो इसे विज़िटर की हार्ड ड्राइव पर एक सादे पाठ रिकॉर्ड के रूप में संग्रहीत किया जाता है। अब, जब विज़िटर आपकी साइट के किसी अन्य पृष्ठ पर आता है, तो ब्राउज़र उसी कुकी को पुनर्प्राप