Сжатие Gzip может значительно уменьшить размер тела ответа и, следовательно, увеличить скорость веб-приложения. Используйте промежуточное программное обеспечение для сжатия gzip в вашем приложении Express. Например:
тветы JSON в одной из моих облачных функций Google могут быть уменьшены до 70-80%, если я отвечу с использованием сжатия gzip.
Как я могу отправить сжатый ответ json из моих функций (запуск через http (s))?
Это также означает, что я бы сэкономил на сетевых расходах с облачной платформой Google и ускорил бы загрузку данных для мобильных пользователей.
Я пытался использоватьzlib
родной модуль но не повезло ...
if (req.get('Accept-Encoding') && req.get('Accept-Encoding').indexOf('gzip') > -1) {
interpretation.gzip = true;
const zlib = require('zlib');
res.set('Content-Type', 'text/plain');
res.set('Content-Encoding', 'gzip');
zlib.gzip(JSON.stringify(interpretation), function (error, result) {
if (error) throw error;
res.status(200).send(result);
})
} else {
interpretation.gzip = false;
res.status(200).send(interpretation);
}
В Почтальоне размер ответа такой же, тип контента изменился, но нетContent-Encoding
заголовок установлен в ответе ...