Django Academy · Lektion

Cookies kontra sessioner

Vælg det rigtige sted at gemme tilstand

Lektion 4 af 413 trin

Cookies kontra sessioner er en gratis Django Academy-lektion på CoddyKit. Dette er lektion 4 af 4. Du kan læse alle 3 lektioner i dette læringsspor gratis i deres fulde længde — derefter låser CoddyKit PRO alle lektioner op samt praktiske øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Den er en del af læringsforløbet i Django Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. Django Academy-kurset indeholder 4 lektioner i alt.

To måder at huske på

Både cookies og sessioner hjælper din app med at huske en besøgende, men de gemmer data meget forskellige steder. Det er vigtigt at vide, hvilken du skal vælge. 🤔

Hvad en cookie er

En cookie er et lille stykke tekst, som browseren gemmer og sender med ved hver anmodning til dit websted. Dataene ligger på klienten.

Angiv en cookie

Du angiver en cookie på svarobjektet med set_cookie og giver den et navn, en værdi og eventuelt en levetid.

response = HttpResponse('Hi')
response.set_cookie('lang', 'en', max_age=3600)

Læse en cookie

Cookies kommer ind i request.COOKIES, som er en simpel ordbog. Du læser værdien igen ved hjælp af dens nøgle i den næste forespørgsel.

lang = request.COOKIES.get('lang', 'en')

Hvor sessionsdata gemmes

En session gemmer de faktiske data på serveren og sender kun en nøgle til browseren. Den besøgende kan aldrig se indholdet.

Cookies er synlige

Fordi cookies ligger i browseren, kan brugeren læse og redigere dem. Gem derfor aldrig hemmeligheder som priser eller brugerroller der.

Sessions skjuler dataene

Sessionsdata forbliver på serveren, så det er det rigtige sted til alt følsomt eller noget, brugeren ikke må ændre.

Størrelsesgrænser

Cookies er meget små og begrænset til omkring 4KB hver, mens sessions kan indeholde langt større strukturer, fordi de ligger i din database eller cache.

Beskyt dine cookies

Tilføj HttpOnly, så JavaScript ikke kan læse en cookie, og Secure, så den kun sendes via HTTPS. Django indstiller dette for sessionid som standard.

response.set_cookie('t', '1', httponly=True, secure=True)

Hvornår du skal bruge en cookie

Brug en almindelig cookie til små, ikke-følsomme indstillinger som et tema eller et valgt sprog, som det er i orden, at brugeren kan se.

Hvornår du skal bruge en session

Brug en session til loginstatus, indkøbskurve eller noget privat. Den gemmer cookien sikkert i betroet lager på serveren.

Hurtigt tjek

Du skal gemme en værdi, som brugeren aldrig må læse eller ændre. Hvad passer bedst?

Opsummering

Du sammenlignede cookies og sessions: cookies gemmer små, synlige data på klienten, mens sessions gemmer større, private data på serveren. Vælg ud fra følsomhed og størrelse. 🎉

Gratis at komme i gang

Lær Python med en AI-underviser — gratis

Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.

Kurser
30
Lektioner
120

Ofte stillede spørgsmål

Er lektionen “Cookies kontra sessioner” gratis?

Ja — alle 3 lektioner i læringssporet Django Academy, inklusive “Cookies kontra sessioner”, kan læses gratis i deres fulde længde her på webstedet. Derefter låser CoddyKit PRO alle lektioner op samt interaktive øvelser med en indbygget kodeeditor og en AI-underviser døgnet rundt. Django Academy-kurset indeholder 4 lektioner i alt.

Hvad lærer jeg i “Cookies kontra sessioner”?

Vælg det rigtige sted at gemme tilstand Du øver dig i Django Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.

Skal jeg have erfaring for at begynde på Django Academy?

Der kræves ingen tidligere erfaring. Django Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 4 af 4.

Hvor lang tid tager lektionen “Cookies kontra sessioner”?

De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.

Kan jeg skrive og køre kode i denne Django Academy-lektion?

Ja. Alle Django Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.

Alle lektioner i dette kursus

  1. Sessions-frameworket
  2. Læsning og skrivning af request.session
  3. Messages-frameworket
  4. Cookies kontra sessioner
← Tilbage til Django Academy