← Back to JavaScript Course | Chapter 9: Async & Web APIs | Lesson 5 of 26

JS कुकीज़

एक cookie एक छोटा सा note है जो कोई website आपके browser में छोड़ती है ताकि वह बाद में आपको याद रख सके, जैसे एक name tag। JavaScript इन notes को पढ़, सेट, और हटा सकता है।
Syntax
javascript
document.cookie = "name=value; expires=date; path=/";
const cookies = document.cookie;

Cookie क्या है?

एक cookie किसी website द्वारा browser में store किया गया data का एक छोटा टुकड़ा है। localStorage के उलट, cookies अपने domain को हर HTTP request में अपने आप शामिल हो जाती हैं, यही वजह है कि ये session identification के लिए उपयोगी हैं।

उदाहरण: What Is a Cookie?

javascript
document.cookie = "username=Sam"; // automatically sent with future requests to this domain
console.log(document.cookie);

Cookies पढ़ना

document.cookie current document के लिए उपलब्ध cookies return करता है। returned string में सभी cookies एक semicolon-separated list के रूप में होती हैं, इसलिए किसी खास cookie की value पढ़ने के लिए आपको उस string को खुद parse करना पड़ता है।

उदाहरण: Read Cookies

javascript
document.cookie = "a=1";
document.cookie = "b=2";
console.log(document.cookie); // "a=1; b=2" - one semicolon-separated string

Cookie Expiration

आप किसी cookie के लिए एक expiration date या max-age सेट कर सकते हैं। बिना explicit expiration के, एक cookie एक 'session cookie' होती है जो browser बंद होने पर गायब हो जाती है; एक सेट करना उसे उस date तक बनाए रखता है।

उदाहरण: Cookie Expiration

javascript
// Declare the constant `expiry` as a new `Date` instance
// Declare the constant `expiry` as a new `Date` instance
const expiry = new Date();
// Call `expiry.setDate(expiry.getDate() + 7)`
// Call `expiry.setDate(expiry.getDate() + 7)`
expiry.setDate(expiry.getDate() + 7);
// Assign `username=Sam; expires=${expiry.toUTCString()}` to `document.cookie`
// Assign `username=Sam; expires=${expiry.toUTCString()}` to `document.cookie`
document.cookie = `username=Sam; expires=${expiry.toUTCString()}`;
// Print `document.cookie` to the console
// Print `document.cookie` to the console
console.log(document.cookie);

एक Cookie Delete करना

किसी cookie को delete करने के लिए, उसका expiration time अतीत में सेट करें या max-age को zero करें। Browsers कोई dedicated delete method नहीं देते — cookie को पहले से बीत चुकी expiration date से overwrite करना इसे हटाने का standard तरीका है।

उदाहरण: Delete a Cookie

javascript
document.cookie = "username=Sam; expires=Thu, 01 Jan 1970 00:00:00 UTC"; // deletes it
console.log(document.cookie);

Cookie Safety

साधारण JavaScript-readable cookies में sensitive data store न करें। Secure authentication cookies को आमतौर पर server-side security flags इस्तेमाल करने चाहिए।

session tokens जैसी sensitive cookies को server-side पर HttpOnly और Secure मार्क किया जाना चाहिए ताकि client-side JavaScript उन्हें पढ़ या leak न कर सके, यहाँ दिखाए गए document.cookie access के उलट।

उदाहरण: Cookie Safety

javascript
// Do NOT rely on document.cookie for sensitive data:
document.cookie = "theme=dark"; // fine, non-sensitive
// Session tokens should be set server-side with HttpOnly + Secure flags instead
console.log(document.cookie);
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
आम गलतियां
  1. document.cookie = "a=1; b=2" से cookie set करना और दो cookies की उम्मीद करना, जबकि हर assignment एक cookie set करता है।
  2. path=/ भूल जाना, इसलिए cookie सिर्फ current path पर उपलब्ध होता है।
  3. Secure और HttpOnly के बिना sensitive data store करना, जिसे server को set करना चाहिए; document.cookie HttpOnly set नहीं कर सकता।

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.