-
Notifications
You must be signed in to change notification settings - Fork 1
Ресурс
Apostol Developer edited this page Sep 25, 2021
·
6 revisions
Система предоставляет возможность хранить строковые (бинарные в формате BASE64) ресурсы в древовидной структуре и в разрезе нескольких языков.
Ресурс имеет UUID (Universally unique identifier) «универсальный уникальный идентификатор» на который можно ссылаться из программного кода клиентского приложения.
Для доступа к ресурсу нужно указать:
-
Идентификатор (
uuid
); -
Код языка (
localecode
) - Если параметр не указан язык будет выбран или из текущей сессии авторизованного пользователя или из системных настроек.
POST /api/v1/resource/count
Количество ресурсов с возможностью указания фильтра отбора данных.
Параметры запроса: Общие параметры запроса для списка
POST /api/v1/resource/set
Создает новый или меняет ранее созданные ресурс.
Параметры запроса:
Имя | Тип | Значение | Описание |
---|---|---|---|
id | UUID | Необязательный. Идентификатор ресурса. Можно указать свой или пропустить для генерации на стороне сервера. | |
root | UUID | Необязательный. Идентификатор корневого узла. Передать null для создания корневого узла или ресурса без древовидной структуры. | |
node | UUID | Необязательный. Идентификатор узла родителя. Передать null для ресурса без древовидной структуры. | |
type | STRING | MIME type | Рекомендуемый. Multipurpose Internet Mail Extensions (MIME) тип. |
name | STRING | Рекомендуемый. Наименование ресурса. | |
description | STRING | Необязательный. Описание ресурса. | |
encoding | STRING | UTF-8, BASE64 | Рекомендуемый. Кодировка ресурса. |
data | STRING | Необязательный. Данные ресурса. | |
sequence | INTEGER | Необязательный. Очерёдность в рамках текущего уровня. | |
localecode | STRING | en, ru | Необязательный. Код локали (языка). |
POST /api/v1/resource/get
Получить ресурс.
Параметры запроса:
Имя | Тип | Значение | Описание |
---|---|---|---|
id | UUID | Обязательный. Идентификатор ресурса. |
Формат ответа:
Имя | Тип | Описание |
---|---|---|
id | UUID | Идентификатор ресурса. |
root | UUID | Идентификатор Идентификатор корневого узла. |
node | UUID | Идентификатор узла родителя. |
type | STRING | Multipurpose Internet Mail Extensions (MIME) тип. |
level | INTEGER | Уровень вложенности в иерархии дерева. |
sequence | INTEGER | Очерёдность в рамках текущего уровня. |
name | STRING | Наименование ресурса. |
description | STRING | Описание ресурса. |
encoding | STRING | Кодировка ресурса (UTF-8, BASE64). |
data | STRING | Данные ресурса. |
updated | TIMESTAMP | Дата последнего обновления. |
locale | NUMERIC | Идентификатор локали (языка). |
localecode | STRING | Код локали (языка). |
localename | STRING | Наименование локали (языка). |
localedescription | STRING | Описание локали (языка). |
POST /api/v1/resource/list
Возвращает список ресурсов. Параметры запроса: Общие параметры запроса для списка
Запрос:
POST /api/v1/resource/set HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[сокращенно для краткости].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"localecode": "ru", "name": "text", "data": "Текст"}
Запрос:
POST /api/v1/resource/set HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[сокращенно для краткости].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"id": "553f7ab4-58c0-48ef-85f5-a10be1ce3c2d", "localecode": "ru", "name": "Новый", "data": "Новый ресурс"}
Запрос:
POST /api/v1/resource/set HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[сокращенно для краткости].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"id": "553f7ab4-58c0-48ef-85f5-a10be1ce3c2d", "localecode": "en", "name": "New", "data": "New resource"}
Запрос:
POST /api/v1/resource/set HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[сокращенно для краткости].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"id":"a99d1bd5-5871-4bc9-87a7-2b92b399730e", "root": "553f7ab4-58c0-48ef-85f5-a10be1ce3c2d", "node": "553f7ab4-58c0-48ef-85f5-a10be1ce3c2d", "localecode": "ru", "name": "Дочерний", "data": "Дочерний ресурс"}
Запрос:
POST /api/v1/resource/set HTTP/1.1
Host: localhost:8080
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.[сокращенно для краткости].NorYsi-Ht826HUFCEArVZ60_dEUmYiJYXubnTyweIMg
Content-Type: application/json
{"root": "553f7ab4-58c0-48ef-85f5-a10be1ce3c2d", "node": "a99d1bd5-5871-4bc9-87a7-2b92b399730e", "localecode": "ru", "name": "Дочерний 2", "data": "Дочерний ресурс 2"}