PutBin

Синтаксис

<адрес веб-сервиса>/PutBin?mon=<моникер><параметры операции>

Описание

Операция PutBin предназначена для загрузки бинарных данных на сервер с помощью POST-запроса.

Комментарии

В зависимости от того объекта, для которого выполняется операция, в качестве моникера указывается моникер соединения с репозиторием или моникер какого-либо открытого экземпляра объекта. Необходимые моникеры возвращают различные операции Open*.

В качестве параметров операции могут указываться следующие значения:

Параметры Описание
<моникер соединения с репозиторием>!Bin!$New Загрузка на сервер нового бинарного объекта, который передается в теле запроса. В дальнейшем получить загруженный бинарный объект с сервера можно с помощью операции GetBinary.
<моникер экспресс-отчета>!Load!Express Загрузка в экспресс-отчет настроек и данных, сохраненных в файле в формате PPEXPRESS (*.ppexpress). Содержимое файла передается в теле запроса.
<моникер экспресс-отчета>!Load!Cube Загрузка в экспресс-отчет данных, сохраненных в файле в формате PPCUBE (*.ppcube). Содержимое файла передается в теле запроса.
<моникер соединения с репозиторием>!$Sys! + <идентификатор__документа_репозитория> Загрузка в документ репозитория с указанным идентификатором содержимого файла, передаваемого в теле запроса.
<моникер аналитической панели>!BinItem!New Загрузка в аналитическую панель нового изображения. Изображение передается в теле запроса. Для загруженного изображения будут сгенерированы идентификатор и ключ.
<моникер аналитической панели>!BinItem! + <id/key> Загрузка в аналитическую панель изображения и присвоение ему указанного идентификатора или ключа. Если элемент с указанными идентификатором/ключом уже существует, то он будет заменен. Изображение передается в теле запроса.

Пример

Ниже приведен пример кода html-страницы, которая используется для отправки данных на сервер с помощью операции PutBin. В качестве значения отправляется форма, реализованная на html-странице. Отправка осуществляется при щелчке по гиперссылке.

Для уменьшения примера из кода исключен скрипт функции PostRequest, которая используется для выполнения операций в JSON формате. Код данной функции можно посмотреть в статье «Подключение к репозиторию».

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="X-UA-Compatible" content="IE=edge" /> <title>Использование операции PutBin</title> </head> <body>     <script type="text/javascript">         var svc = "http://localhost:9090/axis2/services/PP.SOM.Som";         function getFormElement(id) {             res = document.getElementById(id);             return res;         }         function sendForm(form, url) {             sta = getFormElement('status');             sta.innerHTML = '';             xhr = new XMLHttpRequest(),             xhr.open('POST', url, false);             data = new FormData(form);             xhr.send(data);             if (xhr.status == 200) {                 sta.innerHTML = "Ответ:<p>" + xhr.responseText + "<p>";             } else {                 sta.innerHTML = "Ошибка выполнения запроса:<p>" + xhr.responseText +  "<p>";             }         }         // Подключение к репозиторию и отправка запроса на выполнение операции PutBin         function PutBin(form) {             OpenMetabase = { "OpenMetabase": { "tDef": { "id": "PPREPOSITORY" }, "tCreds": { "user": { "id": "pprepository" }, "pass": "pprepository" } } }             //Подключение к репозиторию             OpenMetabaseResult = PostRequest(svc, OpenMetabase);             //Отправка данных на сервер             return sendForm(form, svc + "/PutBin?mon=" + OpenMetabaseResult.OpenMetabaseResult.id + "!Bin!$New");         }         /*             Скрипт для PostRequest         */     </script>     <!--Форма, данные которой будут отправляться на сервер-->     <form id="fileForm" action="" method="" enctype="multipart/form-data" onsubmit="PutBin(this)">         <div>             <input type="text" name="name" id="name" />             <input type="file" name="file" id="file" />         </div>     </form>     <!--Гиперссылка для отправки данных-->     <div>         <a href="javascript:PutBin(getFormElement('fileForm'))">PutBin</a>     </div>     <!--Поле для формирования статуса выполнения операции-->     <div id="status"></div> </body> </html>

См. также:

Дополнительные операции