Cookie, Local Storage ve Session Arasındaki Farklar ve İşlevleri

Aziz Şentürk
Wellbees Tech
Published in
3 min readJul 25, 2023

Web geliştirme sürecinde, kullanıcının verilerini depolamak ve geçici olarak saklamak çok önemlidir. Cookie, Local Storage ve Session, bu amaçla kullanılan teknolojilerdir. Web uygulamalarında kullanıcı oturumlarını sürdürmek, kullanıcı tercihlerini kaydetmek veya geçici verileri depolamak için kullanılmaktadır. Ancak, her birinin farklı özellikleri ve kullanımları bulunmaktadır.

Cookie

Cookie’ler, web tarayıcısında saklanan küçük veri parçacıklarıdır. Ana kullanım amacı, sunucudan alınan bilgileri kullanıcı tarafında saklamaktır. Cookie’ler, bir web sitesine geri dönüldüğünde sunucuya gönderilir, böylece web sitesi kullanıcının önceki etkileşimlerini hatırlayabilir.

Cookie’ler, oturum yönetimi, tercihleri hatırlama, izleme, reklamlar ve kişiselleştirme gibi birçok uygulama için kullanılabilir.

Özellikler:

  • Saklama Yeri: Tarayıcıda saklanır, aynı web sitesi farklı tarayıcılarda farklı cookie’ler kullanabilir.
  • Veri Boyutu: 4 KB’a kadar veri saklayabilir.
  • Saklama Süresi: Ayarlanabilir son kullanma tarihi vardır. Belirtilen tarihten sonra tarayıcı tarafından otomatik olarak silinir.
  • Sunucu iletişimi: Tarayıcı her istek yaparken Cookie’yi sunucuya gönderir.
  • Güvenlik: Güvenlik açısından daha zayıftır çünkü cookie’ler tarayıcıda saklanır ve kullanıcı tarafından manipüle edilebilir.

Örnek:

// Cookie oluşturma
document.cookie = "username=Aziz Senturk; expires=Fri, 31 Dec 2023 23:59:59 GMT; path=/";

// Cookie okuma
var username = document.cookie;
console.log(username);

Local Storage:

Local Storage, web tarayıcısında kalıcı olarak saklanan veriler için kullanılan bir depolama mekanizmasıdır. Kullanıcıların tercihlerini, çevrimdışı verileri ve diğer uygulama durumlarını depolamak için idealdir. Veriler, tarayıcıda bir anahtar-değer çifti olarak depolanır.

Local Storage, oturum durumu, form verileri, önbelleğe alma ve yerel uygulama verileri gibi durumları saklamak için kullanışlıdır.

Özellikler:

  • Saklama Yeri: Tarayıcıda saklanır, aynı web sitesi farklı tarayıcılarda aynı verilere erişilemez.
  • Veri Boyutu: Yaklaşık 5 MB’a kadar veri saklayabilir.
  • Saklama Süresi: Veriler tarayıcıda kalıcı olarak saklanır, kullanıcı tarafından silinmedikçe kalır.
  • Sunucu iletişimi: Sunucu ile doğrudan iletişim gerektirmez. Sadece istemci tarafında kullanılır.
  • Güvenlik: Tarayıcı seviyesinde güvenlik sağlar ve diğer alanlara erişimi engeller. Ancak, Cross-Site Scripting (XSS) saldırılarına karşı hassas olabilir.

Örnek:

// Local storage'a veri ekleme
localStorage.setItem("username", "Aziz Senturk");

// Local storage'dan veri okuma
var username = localStorage.getItem("username");
console.log(username);

Session:

Session, sunucu tarafında depolanan, kullanıcının web sitesiyle etkileşim halindeyken geçici olarak saklanan verileridir. Kullanıcının bir oturumu başlatıldığında sunucuda oluşturulur ve bir oturum kimliği (session ID) ile ilişkilendirilir. Oturum, kullanıcı tarayıcısını kapattığında veya belirli bir süre boyunca etkin olmadığında sona erer.

Session’lar, kullanıcının oturum durumunu yönetmek, yetkilendirme ve kimlik doğrulama gibi işlevler için yaygın olarak kullanılır.

Özellikler:

  • Saklama Yeri: Sunucu tarafında depolanır ve kullanıcının tarayıcısına sadece oturum kimliği gönderilir.
  • Veri Boyutu: Sunucu kaynaklarına bağlı olarak yaklaşık 5 MB’a kadar veri saklayabilir.
  • Saklama Süresi: Oturum süresi boyunca geçerlidir. Tarayıcı kapatıldığında veya oturum sona erdiğinde silinir.
  • Sunucu iletişimi: Oturum bilgileri sunucu taraflı olarak sakladığından her istekte sunucu ile iletişim gerektirir.
  • Güvenlik: Sunucu taraflı olduğu için daha güvenlidir. Oturum bilgileri sunucuda saklandığından, kullanıcı tarafından manipüle edilme riski düşüktür.

Örnek:

// Oturum başlatma
session_start();

// Oturum verisi ekleme
$_SESSION["username"] = "John Doe";

// Oturum verisini okuma
$username = $_SESSION["username"];
echo $username;

Cookie, Local Storage ve Session, web geliştirme esnasında veri depolamak için farklı amaçlarla kullanılan teknolojilerdir. Cookie ve Local Storage verileri tarayıcı tarafında, Session verisi ise sunucu tarafında depolanır. Genellikle, Cookie’ler kullanıcı etkileşimlerini hatırlamak ve izlemek için kullanılırken, Local Storage verileri daha kalıcı bilgileri saklamak için kullanılır. Session ise oturum durumunu yönetmek ve yetkilendirme işlemleri için kullanılır.

--

--