Skip to content
Snippets Groups Projects
Commit 01ca6c7d authored by michael.minelli's avatar michael.minelli
Browse files

Add compression capability

parent 1192955b
No related branches found
No related tags found
No related merge requests found
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
"@prisma/client": "^5.0.0", "@prisma/client": "^5.0.0",
"axios": "^1.4.0", "axios": "^1.4.0",
"bcryptjs": "^2.4.3", "bcryptjs": "^2.4.3",
"compression": "^1.7.4",
"cors": "^2.8.5", "cors": "^2.8.5",
"dotenv": "^16.0.3", "dotenv": "^16.0.3",
"express": "^4.18.2", "express": "^4.18.2",
...@@ -31,6 +32,7 @@ ...@@ -31,6 +32,7 @@
}, },
"devDependencies": { "devDependencies": {
"@types/bcryptjs": "^2.4.2", "@types/bcryptjs": "^2.4.2",
"@types/compression": "^1.7.2",
"@types/cors": "^2.8.13", "@types/cors": "^2.8.13",
"@types/express": "^4.17.17", "@types/express": "^4.17.17",
"@types/jsonwebtoken": "^9.0.2", "@types/jsonwebtoken": "^9.0.2",
...@@ -173,6 +175,15 @@ ...@@ -173,6 +175,15 @@
"@types/node": "*" "@types/node": "*"
} }
}, },
"node_modules/@types/compression": {
"version": "1.7.2",
"resolved": "https://registry.npmjs.org/@types/compression/-/compression-1.7.2.tgz",
"integrity": "sha512-lwEL4M/uAGWngWFLSG87ZDr2kLrbuR8p7X+QZB1OQlT+qkHsCPDVFnHPyXf4Vyl4yDDorNY+mAhosxkCvppatg==",
"dev": true,
"dependencies": {
"@types/express": "*"
}
},
"node_modules/@types/connect": { "node_modules/@types/connect": {
"version": "3.4.35", "version": "3.4.35",
"resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz", "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz",
...@@ -612,6 +623,47 @@ ...@@ -612,6 +623,47 @@
"node": "^12.20.0 || >=14" "node": "^12.20.0 || >=14"
} }
}, },
"node_modules/compressible": {
"version": "2.0.18",
"resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
"integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
"dependencies": {
"mime-db": ">= 1.43.0 < 2"
},
"engines": {
"node": ">= 0.6"
}
},
"node_modules/compression": {
"version": "1.7.4",
"resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz",
"integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==",
"dependencies": {
"accepts": "~1.3.5",
"bytes": "3.0.0",
"compressible": "~2.0.16",
"debug": "2.6.9",
"on-headers": "~1.0.2",
"safe-buffer": "5.1.2",
"vary": "~1.1.2"
},
"engines": {
"node": ">= 0.8.0"
}
},
"node_modules/compression/node_modules/bytes": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
"integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==",
"engines": {
"node": ">= 0.8"
}
},
"node_modules/compression/node_modules/safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
},
"node_modules/concat-map": { "node_modules/concat-map": {
"version": "0.0.1", "version": "0.0.1",
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
......
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
"@prisma/client" : "^5.0.0", "@prisma/client" : "^5.0.0",
"axios" : "^1.4.0", "axios" : "^1.4.0",
"bcryptjs" : "^2.4.3", "bcryptjs" : "^2.4.3",
"compression" : "^1.7.4",
"cors" : "^2.8.5", "cors" : "^2.8.5",
"dotenv" : "^16.0.3", "dotenv" : "^16.0.3",
"express" : "^4.18.2", "express" : "^4.18.2",
...@@ -42,6 +43,7 @@ ...@@ -42,6 +43,7 @@
}, },
"devDependencies": { "devDependencies": {
"@types/bcryptjs" : "^2.4.2", "@types/bcryptjs" : "^2.4.2",
"@types/compression" : "^1.7.2",
"@types/cors" : "^2.8.13", "@types/cors" : "^2.8.13",
"@types/express" : "^4.17.17", "@types/express" : "^4.17.17",
"@types/jsonwebtoken" : "^9.0.2", "@types/jsonwebtoken" : "^9.0.2",
......
...@@ -12,6 +12,7 @@ import Config from '../config/Config'; ...@@ -12,6 +12,7 @@ import Config from '../config/Config';
import logger from '../shared/logging/WinstonLogger'; import logger from '../shared/logging/WinstonLogger';
import ParamsCallbackManager from '../middlewares/ParamsCallbackManager'; import ParamsCallbackManager from '../middlewares/ParamsCallbackManager';
import ApiRoutesManager from '../routes/ApiRoutesManager'; import ApiRoutesManager from '../routes/ApiRoutesManager';
import compression from 'compression';
class API implements WorkerTask { class API implements WorkerTask {
...@@ -27,6 +28,7 @@ class API implements WorkerTask { ...@@ -27,6 +28,7 @@ class API implements WorkerTask {
this.backend.use(morganMiddleware); //Log API accesses this.backend.use(morganMiddleware); //Log API accesses
this.backend.use(helmet()); //Help to secure express, https://helmetjs.github.io/ this.backend.use(helmet()); //Help to secure express, https://helmetjs.github.io/
this.backend.use(cors()); //Allow CORS requests this.backend.use(cors()); //Allow CORS requests
this.backend.use(compression()); //Compress responses
ParamsCallbackManager.register(this.backend); ParamsCallbackManager.register(this.backend);
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment