Передача двоичных данных через веб-сервис 1С
Есть два способа отправки двоичных данных (данных файлов) через веб-сервисы, созданные на платформе 1С.
Оглавление
Способ отправки двоичных данных через строку
1. Получаем двоичные данные. Можно из файла на диске:
ДвоичныеДанные = Новый ДвоичныеДанные(ИмяФайлаНаДиске);
Или для свойства объекта типа ХранилищеЗначения:
ДвоичныеДанные = ОбъектДанныхДанных.ДанныеХранилища.Получить();
2. Конвертируем данные в строку с помощью функции Base64Строка:
СтрокаBase64 = Base64Строка(ДвоичныеДанные);
3. У веб-сервиса указываем возвращаемое значение типа string:
4. В процедуре возвращаем переменную СтрокаBase64:
...
Возврат СтрокаBase64;
5. На стороне приемника конвертируем обратно:
Данные = Base64Значение(СтрокаBase64);
Отправка двоичных данных через веб-сервис через base64Binary
Можно выбрать тип возвращаемого значения base64Binary и возвращать двоичные данные напрямую без конвертации в строку.
В свойствах метода веб-сервиса указываем тип base64Binary:
Преимущества этого способа:
- Не требуется преобразование в строку и обратно
- Более эффективная передача данных
- Поддерживается стандартами веб-сервисов