[{"data":1,"prerenderedAt":258},["ShallowReactive",2],{"term-c\u002Fcookie":3,"related-c\u002Fcookie":247},{"id":4,"title":5,"acronym":6,"body":7,"category":229,"description":230,"difficulty":231,"extension":232,"letter":233,"meta":234,"navigation":178,"path":235,"related":236,"seo":241,"sitemap":242,"stem":245,"subcategory":6,"__hash__":246},"terms\u002Fterms\u002Fc\u002Fcookie.md","Cookie",null,{"type":8,"value":9,"toc":223},"minimark",[10,15,19,23,26,30,212,216,219],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 — The Vibe Check",[16,17,18],"p",{},"A cookie is a tiny piece of data the server tells your browser to store and send back on every future request. It's how websites remember you're logged in — without cookies, every page would ask you to log in again. Cookies can have expiry dates and security flags.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25],{},"HTTP cookies are small key-value data stores sent from a server via the Set-Cookie response header and automatically included by the browser in subsequent requests via the Cookie header. Used for session management, authentication, and tracking. Security attributes include HttpOnly, Secure, and SameSite.",[11,27,29],{"id":28},"show-me-the-code","Show Me The Code",[31,32,37],"pre",{"className":33,"code":34,"language":35,"meta":36,"style":36},"language-javascript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F Setting a cookie in Express\nres.cookie('sessionId', 'abc123', {\n  httpOnly: true,   \u002F\u002F JS can't access it\n  secure: true,     \u002F\u002F HTTPS only\n  sameSite: 'strict', \u002F\u002F CSRF protection\n  maxAge: 86400000  \u002F\u002F 24 hours in ms\n});\n\n\u002F\u002F Reading cookies\nconsole.log(req.cookies.sessionId);\n","javascript","",[38,39,40,49,92,111,126,146,161,173,180,186],"code",{"__ignoreMap":36},[41,42,45],"span",{"class":43,"line":44},"line",1,[41,46,48],{"class":47},"sHwdD","\u002F\u002F Setting a cookie in Express\n",[41,50,52,56,60,64,67,70,74,76,79,82,85,87,89],{"class":43,"line":51},2,[41,53,55],{"class":54},"sTEyZ","res",[41,57,59],{"class":58},"sMK4o",".",[41,61,63],{"class":62},"s2Zo4","cookie",[41,65,66],{"class":54},"(",[41,68,69],{"class":58},"'",[41,71,73],{"class":72},"sfazB","sessionId",[41,75,69],{"class":58},[41,77,78],{"class":58},",",[41,80,81],{"class":58}," '",[41,83,84],{"class":72},"abc123",[41,86,69],{"class":58},[41,88,78],{"class":58},[41,90,91],{"class":58}," {\n",[41,93,95,99,102,106,108],{"class":43,"line":94},3,[41,96,98],{"class":97},"swJcz","  httpOnly",[41,100,101],{"class":58},":",[41,103,105],{"class":104},"sfNiH"," true",[41,107,78],{"class":58},[41,109,110],{"class":47},"   \u002F\u002F JS can't access it\n",[41,112,114,117,119,121,123],{"class":43,"line":113},4,[41,115,116],{"class":97},"  secure",[41,118,101],{"class":58},[41,120,105],{"class":104},[41,122,78],{"class":58},[41,124,125],{"class":47},"     \u002F\u002F HTTPS only\n",[41,127,129,132,134,136,139,141,143],{"class":43,"line":128},5,[41,130,131],{"class":97},"  sameSite",[41,133,101],{"class":58},[41,135,81],{"class":58},[41,137,138],{"class":72},"strict",[41,140,69],{"class":58},[41,142,78],{"class":58},[41,144,145],{"class":47}," \u002F\u002F CSRF protection\n",[41,147,149,152,154,158],{"class":43,"line":148},6,[41,150,151],{"class":97},"  maxAge",[41,153,101],{"class":58},[41,155,157],{"class":156},"sbssI"," 86400000",[41,159,160],{"class":47},"  \u002F\u002F 24 hours in ms\n",[41,162,164,167,170],{"class":43,"line":163},7,[41,165,166],{"class":58},"}",[41,168,169],{"class":54},")",[41,171,172],{"class":58},";\n",[41,174,176],{"class":43,"line":175},8,[41,177,179],{"emptyLinePlaceholder":178},true,"\n",[41,181,183],{"class":43,"line":182},9,[41,184,185],{"class":47},"\u002F\u002F Reading cookies\n",[41,187,189,192,194,197,200,202,205,207,210],{"class":43,"line":188},10,[41,190,191],{"class":54},"console",[41,193,59],{"class":58},[41,195,196],{"class":62},"log",[41,198,199],{"class":54},"(req",[41,201,59],{"class":58},[41,203,204],{"class":54},"cookies",[41,206,59],{"class":58},[41,208,209],{"class":54},"sessionId)",[41,211,172],{"class":58},[11,213,215],{"id":214},"when-youll-hear-this","When You'll Hear This",[16,217,218],{},"\"Store the auth token in a cookie with HttpOnly flag.\" \u002F \"Clear all cookies to fix the stale session issue.\"",[220,221,222],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html pre.shiki code .sfNiH, html code.shiki .sfNiH{--shiki-light:#FF5370;--shiki-default:#FF9CAC;--shiki-dark:#FF9CAC}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":36,"searchDepth":51,"depth":51,"links":224},[225,226,227,228],{"id":13,"depth":51,"text":14},{"id":21,"depth":51,"text":22},{"id":28,"depth":51,"text":29},{"id":214,"depth":51,"text":215},"networking","A cookie is a tiny piece of data the server tells your browser to store and send back on every future request.","beginner","md","c",{},"\u002Fterms\u002Fc\u002Fcookie",[237,238,239,240],"Session","Header","HTTP","Security",{"title":5,"description":230},{"changefreq":243,"priority":244},"weekly",0.7,"terms\u002Fc\u002Fcookie","-vUFv9Eu0ZyR-KUqHcsXJYWOyCN3-qnrF5WGYpX4hxM",[248,251,255],{"title":238,"path":249,"acronym":6,"category":229,"difficulty":231,"description":250},"\u002Fterms\u002Fh\u002Fheader","Headers are the metadata attached to HTTP requests and responses — information about the information.",{"title":239,"path":252,"acronym":253,"category":229,"difficulty":231,"description":254},"\u002Fterms\u002Fh\u002Fhttp","HyperText Transfer Protocol","HTTP is the language your browser uses to ask websites for stuff. You type a URL, your browser shouts 'hey, give me that page!",{"title":237,"path":256,"acronym":6,"category":229,"difficulty":231,"description":257},"\u002Fterms\u002Fs\u002Fsession","A session is the server's way of remembering who you are across multiple requests.",1776518270168]