CodeBlanks Logo Icon CodeBlanks

JWT

jsonwebtoken ile JWT authentication öğrenirsin.

JWT nedir?

JWT (JSON Web Token), iki taraf arasında güvenle bilgi taşıyan imzalı bir dizgidir (string). Kimlik doğrulama için yaygın kullanılır: kullanıcı giriş yapar, sunucu bir JWT döner, istemci sonraki isteklerde bu JWT'yi gönderir.

JWT üç parçadan oluşur: başlık (header), yük (payload) ve imza (signature). İmza, bir gizli anahtarla (secret) üretilir; bu yüzden token değiştirilemez. Node.js'te jsonwebtoken modülü ile JWT üretip doğrularsın.

jwt.sign ve jwt.verify

jwt.sign(payload, secret) bir JWT üretir. payload bir nesnedir (örn. { user: "Ayşe" }); secret imzalama anahtarıdır. Dönen token bir dizgidir.

jwt.verify(token, secret) token'ı doğrular ve payload'u döndürür. İmza yanlışsa hata fırlatır. Üçüncü parametre olarak süre verilir: jwt.sign(payload, secret, { expiresIn: "1h" }) token'ı bir saat geçerli yapar.

Uygulama token türünü yaz

jwt modülünü içe aktar. jwt.sign({ user: "Ayşe" }, "gizli") ile bir token üret. typeof token sonucunu yaz.

Başlangıç kodu

index.js
// modülü içe aktar

// token üret

// türünü yaz

Örnek çözüm

index.js
const jwt = require("jsonwebtoken");
const token = jwt.sign({ user: "Ayşe" }, "gizli");
console.log(typeof token);

Beklenen çıktı

string

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Modül adını tamamla

Soru
const jwt = require("____")
Cevap
const jwt = require("jsonwebtoken")

Açıklama: jsonwebtoken modülü require("jsonwebtoken") ile yüklenir.

2 Parçayı rolüne eşle

Kavram Anlamı
jwt.sign Token üretir
jwt.verify Token doğrular
token İmzalı veri
secret Gizli anahtar

3 JWT ne sağlar?

  • Dosya sıkıştırma
  • Ağ hızlandırma
  • Durumsuz kimlik doğrulama Doğru cevap
  • Veritabanı bağlantısı

Açıklama: JWT durumsuz kimlik doğrulama sağlar.

İleri seviye bölümündeki tüm dersler