Sobes.tech
Junior

Каква е механиката на вход на потребителя в системата?

sobes.tech AI

Отговор от AI

Механизмът на входа включва:

  1. Въвеждане на данни: Потребителят въвежда своите идентификационни данни (например, логин/имейл и парола) в полетата на формуляра.
  2. Изпращане на заявка: Данните се изпращат към сървъра чрез протокола HTTPS.
  3. Валидация на сървъра: Сървърът проверява коректността на въведените данни (формат, наличие).
  4. Аутентикация: Сървърът търси потребителя в базата данни по въведените идентификатори и сравнява хеша на въведената парола с този, съхраняван в базата.
  5. Авторизация: Ако аутентикацията е успешна, сървърът определя правата за достъп на потребителя до ресурсите.
  6. Формиране на отговора:
    • При успешен вход: Сървърът генерира токен (например, JWT, сесионен ID) и го изпраща на клиента (често в заглавката на отговора или в cookie). Може да бъде изпратена и допълнителна информация за потребителя.
    • При неуспешен вход: Сървърът изпраща отговор с грешка (например, "Невярно потребителско име или парола").
  7. Обработка на отговора на клиента:
    • При успех: Клиентът запазва токена (например, в Local Storage, Session Storage, cookie) и пренасочва потребителя към защитена страница.
    • При неуспех: Клиентът показва съобщение за грешка на потребителя.

Примерна структура на заявката (опростена):

// POST /api/v1/login
{
  "username": "user@example.com",
  "password": "mysecretpassword"
}

Пример за успешен отговор:

// 200 OK
{
  "token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "userId": 1,
  "role": "user"
}

Пример за отговор с грешка:

// 401 Unauthorized
{
  "message": "Невярна идентификация"
}