NodeJS сжатие включено, но по-прежнему низкая производительность с аудитом Lighthouse для Angular внешнего интерфейса - PullRequest
0 голосов
/ 09 мая 2020

У меня есть интерфейс angular, размещенный через nodeJS на Heroku. Я сделал все, что мог, для оптимизации страницы, в том числе с использованием сжатия, но когда я проверяю страницу, моя оценка производительности составляет от 15 до 20. В частности, аудит рекомендует включить сжатие текста. Что я думал, что сделал. Я также включил сервисного работника angular. Но я вижу отчет, чтобы избежать огромных сетевых нагрузок ~ 3264 КБ.

Ниже мой сервер. js файл. Что-то не так с тем, как я включил сжатие? Похоже, это не влияет на мои файлы. js. css.

Я также включил серверный модуль Angular.

Как мне улучшить этот результат.

Сервер. js

var express = require("express");
var path = require("path");
var compression = require('compression')
var app = express();

var HTTP_PORT = process.env.PORT || 8080

//required to compress data sent to client 
app.use(compression())
app.use(express.static("public"));

//minifies css & js files sent to client for optimization
app.get('*.js', function(req, res, next) {
    req.url = req.url + '.gz';
    res.set('Content-Encoding', 'gzip');
    res.set('Content-Type', 'text/javascript');
    next();
  });
  app.get('*.css', function(req, res, next) {
    req.url = req.url + '.gz';
    res.set('Content-Encoding', 'gzip');
    res.set('Content-Type', 'text/css');
    next();
  });


// Redirect Users to "index.html" if route not accessed using client side routing
app.use((req, res) => {
    res.sendFile(path.join(__dirname + "/public/index.html"));
});

app.use(function (req, res, next) {
    if (req.secure) {
            // request was via https, so do no special handling
            next();
    } else {
            // request was via http, so redirect to https
            //required for optimaztion 
            res.redirect('https://' + req.headers.host + req.url);
    }
});

app.listen(HTTP_PORT, ()=>{
    console.log("listening on port: " + HTTP_PORT);
})

Спасибо

...