Произвольные непубличные статические файлы домена (files)
Обзор
Предоставляет доступ к файлам в общем каталоге непубличных файлов домена.
Содержащиеся в каталоге файлы загружаются администратором домена, и могут быть назначены для использования некоторыми сущностями домена. Например, при настройке сертификатов в domain.settings.sber_salute в качестве сертификата к эндпойнту указывается путь к сертификату. Так, URL `/rest/v1/fs/targets/files/certificates/x.local.pem` соответствует макро пути ':SYNC_DOMAIN/data/files/certificates/x.local.pem`.
Поддерживается работа с вложенной структурой произвольной глубины. При размещении файла путь автоматически создается, при удалении файла пустые каталоги автоматически удаляются.
Каталог располагается в категории автоматически синхронизирующихся каталогов :SYNC.
Запросы
HTTP verb | Endpoint | Описание |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Заливка группы файлов
Загрузка в коллекцию производится с помощью Content-Type: multipart/formdata
.
В запросе может быть один или несколько файлов.
Файлы размещаются под именами, указанными в заголовках Content-Disposition
каждой части.
Если файл с указанным именем уже существует, то он не сохраняется и возвращает ошибку. В зависимости от Content-Type и наличия успешно размещенных файлов в запросе может быть возвращен неудачный HTTP-ответ, либо информация о неудаче в теле HTTP-ответа 200 OK.
Запрос
POST /rest/v1/fs/targets/files HTTP/1.1
Content-Type: multipart/form-data; boundary=-----------boundary_69df8120352a996e
-----------boundary_69df8120352a996e
Content-Type: application/octet-stream
Content-Disposition: form-data; name="filename"; filename="test.local.pem"
Content-Transfer-Encoding: binary
BINARY BODY OF 'test.local.pem'
-----------boundary_69df8120352a996e--
Получение списка файлов
Запрос
Имя | Тип | Описание |
---|---|---|
|
|
Фильтр по значениям полей. |
|
|
Список полей для вывода. Доступные поля для выдачи: name, size, last_modified. |
|
|
Смещение в списке файлов, подлежащих выдаче. |
|
|
Максимальное количество файлов в списке. |
|
|
Порядок сортировки файлов в списке. |
GET /rest/v1/fs/targets/files HTTP/1.1
Скачивание файла
Запрос
Имя | Тип | Описание |
---|---|---|
|
|
Тип выдачи. По умолчанию
|
GET /rest/v1/fs/targets/files/test.local.pem?attachment=true HTTP/1.1
Перезаливка существующего файла
Производит замену файла.
Загрузка одного файла производится либо с помощью Content-Type: multipart/formdata
,
либо с произвольным Content-Type
не являющимся мультипартом.
Если загрузка происходит с Content-Type: multipart/formdata
,
то будет сохранён только первый файл (первая часть имеющая поле filename в заголовке
Content-Disposition
), а само название файла будет проигнорировано.
Запрос
PUT /rest/v1/fs/targets/files/test.local.pem HTTP/1.1
Content-Type: application/octet-stream
BINARY BODY OF 'test.local.pem'
PUT /rest/v1/fs/targets/files/test.local.pem HTTP/1.1
Content-Type: multipart/form-data; boundary=-----------boundary_69df8120352a996e
-----------boundary_69df8120352a996e
Content-Type: application/octet-stream
Content-Disposition: form-data; name="test.local.pem"; filename="test.local.pem"
Content-Transfer-Encoding: binary
BINARY BODY OF 'test.local.pem'
-----------boundary_69df8120352a996e--
Получение мета-информации о файле
Возвращает мета-информацию о файле, содержащую в том числе размер в заголовке Content-Length
.
Запрос
Имя | Тип | Описание |
---|---|---|
|
|
Тип выдачи. По умолчанию
|
HEAD /rest/v1/fs/targets/files/test.local.pem?attachment=true HTTP/1.1