Описание
В приложении используются environment variables:
- DB_URL, DB_USERNAME, DB_PASSWORD - креды для подключения к БД
- SECRET_KEY - 256-bit ключ шифрования для генерации JWT токена
- EXPIRATION - время жизни JWT токена (напр. 86400000 для 1 дня)
REST API
POST: /api/auth/register - регистрация нового пользователя и получение JWT токена
Пример Request Body: { “name”: “Elena”, “age”: 37, “password”: “1234” }
POST: /api/auth/authenticate - получить новый JWT токен для пользователя
Пример Request Body: { “name”: “Elena”, “password”: “1234” }
GET: /api/user - возвращает всех пользователей
PUT: /api/user/user_id - обновляет инфо о пользователе по user_id
Пример Request Body: { “name”: “Elena”, “age”: 38, “password”: “1234”, “houseId”: 2 }
DELETE: /api/user/user_id - удаляет пользователя по user_id
POST: /api/house - создает дом
Пример Request Body: { “address”: “г. Москва, бул. Пушкина, д. 91, кв. 17”, “hostId”: null, “residents”: [] }
GET: /api/house - возвращает все дома
PUT: /api/house/house_id - обновляет инфо о доме по house_id
Пример Request Body: { “address”: “г. Санкт-Петербург, ул. Ломоносова, д. 91, кв. 17”, “hostId”: 1, “residents”: [] }
DELETE: /api/house/house_id - удаляет дом по house_id