From 8a8054a2b1ad475dacde8cad385b49380a9732ee Mon Sep 17 00:00:00 2001 From: spaceface777 Date: Tue, 13 Nov 2018 19:56:58 +0100 Subject: [PATCH] Add exception if file doesn't exist (#606b5f5) --- package-lock.json | 5 +++++ package.json | 1 + server.js | 17 +++++++++++++++-- 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/package-lock.json b/package-lock.json index da20ac4..2f67ad9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -591,6 +591,11 @@ "resolved": "https://registry.npmjs.org/express-favicon/-/express-favicon-2.0.1.tgz", "integrity": "sha512-KZZF9lIUKU9lkyZM/7AVql7qeXA6EVkHCU5rGU4NvgbWNcYFn6zvCw3cwS5IY/vvP+MzVNVvBABnWfaVZoy7bQ==" }, + "file-exists": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-exists/-/file-exists-5.0.1.tgz", + "integrity": "sha512-TeBMgeKbdSsQtcY2XqKY/yTa4BciMD/Gw8YcND0XMDZt4CDj87l1Wl4x7K0ravZ80tZcyIGMD0hj2VSRPR8M8Q==" + }, "finalhandler": { "version": "1.1.1", "resolved": "http://registry.npmjs.org/finalhandler/-/finalhandler-1.1.1.tgz", diff --git a/package.json b/package.json index 810afd3..7795794 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "cookie-parser": "^1.4.3", "express": "^4.16.4", "express-favicon": "^2.0.1", + "file-exists": "^5.0.1", "redis": "^2.8.0", "uuid": "^3.3.2" }, diff --git a/server.js b/server.js index 17dff2c..a04d721 100644 --- a/server.js +++ b/server.js @@ -5,6 +5,7 @@ const utils = require('./server/utils'); const bodyParser = require('body-parser'); // Peticiones POST const cookieParser = require('cookie-parser'); // Cookies const favicon = require('express-favicon'); // Favicon +const fileExists = require('file-exists'); const path = require('path'); const web_client_path = __dirname + '/web_client/'; @@ -46,11 +47,23 @@ app.get('/chat', function(req, res){ }); app.get('/js/:file', function(req, res){ - res.sendFile(js_path + req.params.file); + fileExists(js_path + req.params.file, function (err, exists) { + if (exists) { + res.sendFile(js_path + req.params.file); + } else { + res.sendStatus(404) + } + }); }); app.get('/css/:file', function(req, res){ - res.sendFile(css_path + req.params.file); + fileExists(css_path + req.params.file, function (err, exists) { + if (exists) { + res.sendFile(css_path + req.params.file); + } else { + res.sendStatus(404) + } + }); }); app.get('/clearMessages', function(req, res){