Junior — Middle
Ποιος είναι ο σκοπός του JSON Web Token και σε ποια σενάρια χρησιμοποιείται;
sobes.tech AI
Απάντηση από AI
JSON Web Token (JWT) — είναι ένας συμπαγής και ασφαλής τρόπος μεταφοράς πληροφοριών μεταξύ μερών με τη μορφή ενός αντικειμένου JSON. Ο κύριος σκοπός του JWT είναι η πιστοποίηση και η εξουσιοδότηση χρηστών σε web εφαρμογές.
Σενάρια χρήσης:
- Μεταφορά δεδομένων χρήστη μετά την είσοδο (π.χ., ID, ρόλοι) χωρίς την ανάγκη διατήρησης συνεδρίας στον διακομιστή.
- Διασφάλιση της ασφάλειας των API, όπου ο πελάτης στέλνει το JWT στην κεφαλίδα Authorization για επιβεβαίωση της ταυτότητάς του.
- Ανταλλαγή πληροφοριών μεταξύ υπηρεσιών σε κατανεμημένα συστήματα.
Παράδειγμα χρήσης σε Node.js:
const jwt = require('jsonwebtoken');
// Δημιουργία token
const token = jwt.sign({ userId: 123, role: 'admin' }, 'μυστικό_κλειδί', { expiresIn: '1h' });
// Έλεγχος token
try {
const decoded = jwt.verify(token, 'μυστικό_κλειδί');
console.log(decoded.userId); // 123
} catch (err) {
console.error('Μη έγκυρο token');
}