Comments (5)
Ну и к тому же поведение по умолчанию очень легко изменить
Согласен. Я предлагаю добавить еще более простой способ изменить это поведение (повысить уровень абстракции интерфейса для управления сжатием):
ввести дополнительный параметр для управления сжатием. Например, "СжиматьОтвет". По умолчанию он будет равен "Истина". При выполнении запроса со значением "Ложь" команда (заголовок) на сжатие серверу отправляться не будет:
Результат = КоннекторHTTP.PostJson("https://httpbin.org/post",, Новый Структура("СжиматьОтвет", Ложь));
Цель изменений - повысить удобство управления сжатием. Чтобы не нужно было вспоминать какой именно заголовок нужно установить и какое значение он должен иметь, чтобы сжатие отключить
from connector.
По умолчанию пользователю нужно получить данные и со сжатием это будет быстрее и экономнее для трафика. Несжатые данные нужны больше для целей отладки и т.п.
Сейчас отключить сжатие можно так
-
Изменить поведение по умолчанию:
заменитьgzip
наidentity
здесь
https://github.com/vbondarevsky/Connector/blob/master/src/CommonModules/%D0%9A%D0%BE%D0%BD%D0%BD%D0%B5%D0%BA%D1%82%D0%BE%D1%80HTTP/Ext/Module.bsl#L1909 -
Переопределить заголовок
Заголовки = Новый Соответствие;
Заголовки.Вставить("Accept-Encoding", "identity");
Результат = КоннекторHTTP.GetJson("http://httpbin.org/headers",, Новый Структура("Заголовки", Заголовки));
from connector.
быстрее и экономнее для трафика
согласен, но при этом мы постоянно тратим процессорный ресурс клиента на распаковку ответа
from connector.
быстрее и экономнее для трафика
согласен, но при этом мы постоянно тратим процессорный ресурс клиента на распаковку ответа
Если ответ маленький, то эти затраты незначительны. Если ответ большой, то сжатый он обработается быстрее и тем самым будут меньше затрат в целом.
Ну и к тому же поведение по умолчанию очень легко изменить
from connector.
Добавил в документацию как можно отключить сжатие
https://github.com/vbondarevsky/Connector#gzip-%D0%B4%D0%B5%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-%D1%82%D0%B5%D0%BB%D0%B0-%D0%BE%D1%82%D0%B2%D0%B5%D1%82%D0%B0
from connector.
Related Issues (20)
- Не заполняется тело запроса при PUT HOT 1
- Перезаписываются части multipart/form-data для совпадающих ключей
- Выполнение JS-кода при загрузке страницы HOT 1
- При обработке перенаправлений cookies в сессии не замещаются новыми из ответа
- Некорректно обрабатывается перенаправление с относительным путем в location
- Ошибка при запросах с аутентификацией в мобильном приложении
- Результат postjson в структуру HOT 1
- Теряется символ "=" в значениях cookie HOT 1
- charset в Content-type HOT 1
- Поддержка работы с облаками S3 HOT 7
- поддержка функций HOT 1
- Имя параметра multipart/form-data, содержащего вложения, должно быть «file»
- Ошибка GET при S3 подключении. HTTPЗапрос.Тело запроса HOT 7
- Параметры запроса при создании структуры новых параметров. HOT 2
- Заголовки сессии имеют приоритет над заголовками передаваемых как параметры HOT 1
- Функции типа Post изменяют входной параметр ДополнительныеПараметры
- для multipart/form-data не формируется (обязательный для некоторых серверов) заголовок Content-Length - размер в байтах тела запроса
- Зачем в расширении контролируется свойство "Назначение использования"? HOT 1
- Заменяет значение таймаута. HOT 2
- Ошибка обработки URL с числовыми параметрами запроса без значений HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from connector.