Cookies kontra sessioner
Välj rätt plats för att lagra tillstånd
Cookies kontra sessioner är en gratis lektion i Django Academy på CoddyKit. Detta är lektion 4 av 4. Du kan läsa vilka 3 lektioner som helst i den här lärvägen kostnadsfritt i sin helhet – därefter låser CoddyKit PRO upp alla lektioner, plus praktisk övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Den ingår i lärvägen för Django Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Django Academy innehåller totalt 4 lektioner.
Två sätt att komma ihåg
Både cookies och sessioner hjälper appen att komma ihåg en besökare, men de lagrar data på mycket olika platser. Det är viktigt att veta vilket alternativ ni ska välja. 🤔
Vad en cookie är
En cookie är en liten textmängd som webbläsaren sparar och skickar tillbaka vid varje begäran till er webbplats. Datan finns på klienten.
Ange en cookie
Ni anger en cookie på svarsobjektet med set_cookie genom att ge den ett namn, ett värde och valfritt en livslängd.
response = HttpResponse('Hi')
response.set_cookie('lang', 'en', max_age=3600)Läsa en cookie
Cookies anländer i request.COOKIES, en enkel ordlista. Läs tillbaka värdet med dess nyckel i nästa begäran.
lang = request.COOKIES.get('lang', 'en')Var sessionsdata finns
En session lagrar de faktiska uppgifterna på servern och skickar bara en nyckel till webbläsaren. Besökaren ser aldrig innehållet.
Cookies är synliga
Eftersom cookies finns i webbläsaren kan användaren läsa och ändra dem. Lagra därför aldrig hemligheter som priser eller användarroller där.
Sessioner döljer data
Sessionsdata finns på serversidan, så det är rätt plats för sådant som är känsligt eller som användaren inte får manipulera.
Storleksbegränsningar
Cookies är mycket små och begränsas till omkring 4KB vardera, medan sessioner kan innehålla betydligt större strukturer eftersom de finns i databasen eller cachen.
Skydda dina cookies
Lägg till HttpOnly så att JavaScript inte kan läsa en cookie, och Secure så att den bara skickas via HTTPS. Django anger dessa för sessionid som standard.
response.set_cookie('t', '1', httponly=True, secure=True)När du ska använda en cookie
Använd en vanlig cookie för små, icke-hemliga inställningar, till exempel ett tema eller ett valt språk som användaren kan se.
När du ska använda en session
Använd en session för inloggningsstatus, kundvagnar eller annat privat. Den lagrar cookien på ett säkert sätt med betrodd lagring på servern.
Snabbkontroll
Du behöver lagra ett värde som användaren aldrig får läsa eller ändra. Vad passar bäst?
Sammanfattning
Du jämförde cookies och sessioner: cookies lagrar små, synliga data på klienten, medan sessioner lagrar större, privata data på servern. Välj utifrån känslighet och storlek. 🎉
Lär dig Python med en AI-lärare – gratis
Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.
- Kurser
- 30
- Lektioner
- 120
Vanliga frågor
Är lektionen ”Cookies kontra sessioner” gratis?
Ja – du kan läsa vilka 3 lektioner som helst i lärvägen Django Academy, inklusive ”Cookies kontra sessioner”, kostnadsfritt i sin helhet här på webben. Därefter låser CoddyKit PRO upp alla lektioner, plus interaktiv övning med en inbyggd kodredigerare och en AI-lärare dygnet runt. Kursen i Django Academy innehåller totalt 4 lektioner.
Vad lär jag mig i ”Cookies kontra sessioner”?
Välj rätt plats för att lagra tillstånd Ni övar på Django Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.
Behöver jag någon erfarenhet för att börja lära mig Django Academy?
Du behöver inga förkunskaper. Utbildningen i Django Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 4 av 4.
Hur lång tid tar lektionen ”Cookies kontra sessioner”?
De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.
Kan jag skriva och köra kod i den här Django Academy-lektionen?
Ja. Varje Django Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.
Alla lektioner i den här kursen
- Sessionsramverket
- Läsa och skriva request.session
- Meddelanderamverket
- Cookies kontra sessioner