Каталог решений - Уменьшаем трафик: читаем HTTP ответ, сжатый GZip, используя ХранилищеЗначения 1С (без ЧтениеZipФайла)

Уменьшаем трафик: читаем HTTP ответ, сжатый GZip, используя ХранилищеЗначения 1С (без ЧтениеZipФайла)

Уменьшаем трафик: читаем HTTP ответ, сжатый GZip, используя ХранилищеЗначения 1С (без ЧтениеZipФайла)

В наличии

Обработка демонстрирует распаковку gzip-сжатого ответа HTTP сервера средствами платформы 1С (без внешней компоненты, без COMОбъекта). Для этого используется объект ХранилищеЗначения, а не ЧтениеZipФайла.

Категория:

Описание

В сети есть примеры, как средствами 1С распаковывать ответ HTTP сервера, закодированный gzip. Однако метод без использования ЧтениеZipФайла я не встречал. Методы в сети из gzip-кодированного тела HTTP-ответа формируют zip-файл с последующей его распаковкой. Мой метод формирует ХранилищеЗначения с последующим получением данных из него. Преимуществом распаковки через Хранилище является то, что не нужно записывать временные файлы. При этом код 1C функции распаковки в несколько раз короче, чем при использовании ЧтениеZipФайла.

Для демонстрации обработка получает курсы валют с сайта Центробанка. Чтобы ответ сервера Центробанка был сжат в gzip, в HTTPЗапросе устанавливается заголовок "accept-encoding: gzip". На скринах видно, что установка такого заголовка порой дает существенную экономию трафика, в данном случае получилось сжатых 1406 байтов вместо несжатых 11212.

Разрабатывалась на платформе 8.3.25, должна работать начиная с 8.3.9.

has been added to your cart:
Оформление заказа