Сервис предоставляет HTTP API для загрузки (upload), скачивания (download) и удаления файлов. Авторизация - Basick Auth. Регистрация пользователей в сервисе не предусморена.
Python ^3.11 aiohttp = "3.8"
1 авторизованный пользователь загружает файл;
2 файл сохранятеся на диск в следующую структуру каталогов: store/ab/abcdef12345... где "abcdef12345..." - имя файла, совпадающее с его хэшем. /ab/ - подкаталог, состоящий из первых двух символов хэша файла. Алгоритм хэширования - sha256.
3 возвращает хэш загруженного файла;
1 авторизованный пользователь передает хэш файла, который необходимо удалить;
2 если по хешу файл удалось найти в локальном хранилище, и файл принадлежит пользователю, то файл пользователя удаляется;
1 любой пользователь передаёт параметр - хэш файла;
2 если по хешу файл удалось найти в локальном хранилище, то возвращаем файл;
docker compose up
Или:
1 Активировать виртуальное окружение
2 Установить Poetry
3 Для установки зависимостей выполнить команду poetry install
4 Создать в корневой папке проекта файл .env
и скопировать в него переменные окруджения из deploy/dev.env
5 Запустить сервер командой honcho start appserver
http://localhost:8080/api/doc#/
Тестировать ендпоинты можно через Postman.