Sobes.tech
Junior — Middle

Ի՞նչ է JSON Web Token-ի նպատակը և ինչ իրավիճակներում է այն կիրառվում:

sobes.tech AI

Պատասխան AI-ից

JSON Web Token (JWT) — դա կոմպակտ և անվտանգ միջոց է տեղեկատվության փոխանցման համար կողմերի միջև JSON օբյեկտի տեսքով։ JWT-ի հիմնական նպատակն է օգտագործողների նույնականացումը և թույլտվությունը վեբ հավելվածներում։

Օգտագործման սցենարներ՝

  • Օգտագործողի տվյալների փոխանցում մուտք գործելուց հետո (օրինակ՝ ID, դերեր)՝ առանց սեսիայի պահպանումը սերվերում։
  • API-ների անվտանգության ապահովում, որտեղ հաճախորդը JWT-ն ուղարկում է Authorization գլխում՝ իր ինքնությունը հաստատելու համար։
  • Տարածված համակարգերում ծառայությունների միջև տեղեկատվության փոխանակում։

Node.js-ում օգտագործման օրինակ՝

const jwt = require('jsonwebtoken');

// Թոքեն ստեղծել
const token = jwt.sign({ userId: 123, role: 'admin' }, 'գաղտնի_ բանալին', { expiresIn: '1h' });

// Թոքեն ստուգել
try {
  const decoded = jwt.verify(token, 'գաղտնի_ բանալին');
  console.log(decoded.userId); // 123
} catch (err) {
  console.error('Անվավեր թոքեն');
}