Тестовое задание Python Back-end Разработчик / Python Back-end Developer
"Хранилище файлов с доступом по http" Реализовать сервис, который предоставит HTTP API для загрузки (upload), скачивания (download) и удаления файлов.
Upload:
- авторизованный пользователь загружает файл;
- файл сохранятеся на диск в следующую структуру каталогов:
-
- store/ab/abcdef12345...
-
- где "abcdef12345..." - имя файла, совпадающее с его хэшем. -- /ab/ - подкаталог, состоящий из первых двух символов хэша файла.
- Алгоритм хэширования - на ваш выбор.
- возвращает хэш загруженного файла;
Delete:
- авторизованный пользователь передает хэш файла, который необходимо удалить;
- если по хешу файл удалось найти в локальном хранилище, и файл принадлежит пользователю, то файл пользователя удаляется;
Download:
- любой пользователь передаёт параметр - хэш файла;
- если по хешу файл удалось найти в локальном хранилище, то возвращаем файл;
Тип авторизации пользователей: Basic. Регистрация пользователей в сервисе не предусмотрена.
Запросы к api тестировал через postman