Должность back-end разработчика компании JetRabbits
- Сервис служит для создания иерархии узлов
- Узлы делятся по типам: директория, директория для публикации, файл, массив байт (видео streaming)
- Один узел может быть связан с одним ресурсом: файл, массив байт (видео streaming)
- Ресурсы в данном проекте образуют файловую систему на сервере: иерархия директорий под которыми располагаются файлы
- Суть задачи: организовать CRUD операции, включая операции поиска и проверку прав на чтение и запись узлов
http://0.0.0.0/rest/v1/openapi.json
HTTP | Ресурс | Тип | Аргументы | Описание |
---|---|---|---|---|
GET | /rest/v1/nodes | json | {JWT-token} | Получение всех узлов |
GET | /rest/v1/nodes/{id}/download | json | - | Скачивание ресурса по ID узла |
POST | /rest/v1/nodes | json | {JWT-token} | Создание или изменение всех узлов |
POST | /rest/v1/nodes/{id}/upload | json | {JWT-token} | Загрузка ресурса по ID узла |
HTTP | Ресурс | Тип | Аргументы | Описание |
---|---|---|---|---|
GET | /rest/v1/nodes/{id} | json | {JWT-token} | Получение узла по ID |
POST | /rest/v1/nodes/search | json | {JWT-token} | Поиск узлов включая сортировку и paging |
DELETE | /rest/v1/nodes/{id} | json | {JWT-token} | Удаление узла по ID |
JSON Web Token (JWT) — это открытый стандарт (RFC 7519) для создания токенов доступа, основанный на формате JSON. Как правило, используется для передачи данных для аутентификации в клиент-серверных приложениях. Токены создаются сервером, подписываются секретным ключом и передаются клиенту, который в дальнейшем использует данный токен для подтверждения своей личности. Выдаётся перед началом тестового задания и действует 24 часа с момента генерации.