Rest API приложение для создания, удаления, просмотра пользователей

  • Опубликовано 3 года назад
  • Просмотры 2
  • Закончить проект

Описание

Модель:

User {
ID [SERIAL PRIMARY KEY NOT NULL]
FirstName [TEXT NOT NULL]
LastName [TEXT NOT NULL]
Age [INT NOT NULL]
}

Эндпоинты:

/users [GET, OPTIONS] получения списка всех пользователей
/users [POST, OPTIONS] создание нового пользователя
/users/{id}[GET, OPTIONS] получение пользователя по ID
/users/{id}[PUT, OPTIONS] изменение пользователя по ID
/users/{id}[DELETE, OPTIONS] удаление пользователя по ID

Все данные принимаются, возвращаются в формате JSON (в том числе сообщения об ошибках). Хранятся в БД PostgreSQL.

Само приложение должно представлять из себя минималистичный код, без усложнений, без асинхронности (Python).

Код должен быть разбит по директориям / файлам – models, handlers, routers и т.д.

При старте приложение должно читать конфигурацию из переменных окружения. Примерный список конфигурационных параметров:

PORT – порт для запуска приложения
DB_HOST – хост БД
DB_PORT – порт БД
DB_USER – пользователь в БД
DB_PASSWORD – пароль от пользователя в БД
DB_NAME – имя базы данных в БД

Приложение должно содержать startup скрипт / команду, которая должна отдельно уметь запускать приложение на указанном в переменной PORT порте и 0.0.0.0 адресе, отдельно выполнять миграции в БД и отдельно генерировать эти миграции.

На каждое действие приложение должно писать лог в STDOUT.

Для приложения должен присутствовать Dockerfile с возможностью сборки / запуска приложения локально. Там где возможно стоит применять multistage сборку.

Приложение должно быть реализовано на Golang, Python, Java, PHP.

Опубликовано 3 года назад