mirror of
https://github.com/matt-fidd/stratos.git
synced 2026-01-01 22:19:26 +00:00
Added middleware to serve static files, and parse incoming bodies
This commit is contained in:
13
app.js
13
app.js
@@ -1,8 +1,12 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
// Import required modules
|
// Import required modules
|
||||||
|
const bodyParser = require('body-parser');
|
||||||
const express = require('express');
|
const express = require('express');
|
||||||
|
const path = require('path');
|
||||||
const session = require('express-session');
|
const session = require('express-session');
|
||||||
|
const serveFavicon = require('serve-favicon');
|
||||||
|
const serveStatic = require('serve-static');
|
||||||
|
|
||||||
// Import user defined modules
|
// Import user defined modules
|
||||||
const DatabaseConnectionPool = require('./lib/DatabaseConnectionPool');
|
const DatabaseConnectionPool = require('./lib/DatabaseConnectionPool');
|
||||||
@@ -21,6 +25,15 @@ async function main() {
|
|||||||
// Initialise express app
|
// Initialise express app
|
||||||
const app = express();
|
const app = express();
|
||||||
|
|
||||||
|
// Set up parsers to allow reading of POST form data
|
||||||
|
app.use(bodyParser.json());
|
||||||
|
app.use(bodyParser.urlencoded({ extended: true }));
|
||||||
|
|
||||||
|
// Set up routes for static files
|
||||||
|
app.use(serveFavicon(path.join(__dirname,
|
||||||
|
'public/assets/favicon.ico')));
|
||||||
|
app.use('/', serveStatic(path.join(__dirname, 'public')));
|
||||||
|
|
||||||
// Set up session middleware
|
// Set up session middleware
|
||||||
app.use(session({
|
app.use(session({
|
||||||
secret: sessionOptions.sessionSecret,
|
secret: sessionOptions.sessionSecret,
|
||||||
|
|||||||
54
package-lock.json
generated
54
package-lock.json
generated
@@ -10,10 +10,13 @@
|
|||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"bcrypt": "^5.0.1",
|
"bcrypt": "^5.0.1",
|
||||||
|
"body-parser": "^1.19.1",
|
||||||
"express": "^4.17.2",
|
"express": "^4.17.2",
|
||||||
"express-mysql-session": "^2.1.7",
|
"express-mysql-session": "^2.1.7",
|
||||||
"express-session": "^1.17.2",
|
"express-session": "^1.17.2",
|
||||||
"mysql2": "^2.3.3"
|
"mysql2": "^2.3.3",
|
||||||
|
"serve-favicon": "^2.5.0",
|
||||||
|
"serve-static": "^1.14.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"eslint": "^8.6.0",
|
"eslint": "^8.6.0",
|
||||||
@@ -5339,6 +5342,31 @@
|
|||||||
"resolved": "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz",
|
||||||
"integrity": "sha1-1WgS4cAXpuTnw+Ojeh2m143TyT4="
|
"integrity": "sha1-1WgS4cAXpuTnw+Ojeh2m143TyT4="
|
||||||
},
|
},
|
||||||
|
"node_modules/serve-favicon": {
|
||||||
|
"version": "2.5.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.5.0.tgz",
|
||||||
|
"integrity": "sha1-k10kDN/g9YBTB/3+ln2IlCosvPA=",
|
||||||
|
"dependencies": {
|
||||||
|
"etag": "~1.8.1",
|
||||||
|
"fresh": "0.5.2",
|
||||||
|
"ms": "2.1.1",
|
||||||
|
"parseurl": "~1.3.2",
|
||||||
|
"safe-buffer": "5.1.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.8.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/serve-favicon/node_modules/ms": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
|
||||||
|
"integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg=="
|
||||||
|
},
|
||||||
|
"node_modules/serve-favicon/node_modules/safe-buffer": {
|
||||||
|
"version": "5.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
|
||||||
|
"integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
|
||||||
|
},
|
||||||
"node_modules/serve-static": {
|
"node_modules/serve-static": {
|
||||||
"version": "1.14.2",
|
"version": "1.14.2",
|
||||||
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz",
|
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz",
|
||||||
@@ -10163,6 +10191,30 @@
|
|||||||
"resolved": "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz",
|
"resolved": "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz",
|
||||||
"integrity": "sha1-1WgS4cAXpuTnw+Ojeh2m143TyT4="
|
"integrity": "sha1-1WgS4cAXpuTnw+Ojeh2m143TyT4="
|
||||||
},
|
},
|
||||||
|
"serve-favicon": {
|
||||||
|
"version": "2.5.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/serve-favicon/-/serve-favicon-2.5.0.tgz",
|
||||||
|
"integrity": "sha1-k10kDN/g9YBTB/3+ln2IlCosvPA=",
|
||||||
|
"requires": {
|
||||||
|
"etag": "~1.8.1",
|
||||||
|
"fresh": "0.5.2",
|
||||||
|
"ms": "2.1.1",
|
||||||
|
"parseurl": "~1.3.2",
|
||||||
|
"safe-buffer": "5.1.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ms": {
|
||||||
|
"version": "2.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
|
||||||
|
"integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg=="
|
||||||
|
},
|
||||||
|
"safe-buffer": {
|
||||||
|
"version": "5.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.1.tgz",
|
||||||
|
"integrity": "sha512-kKvNJn6Mm93gAczWVJg7wH+wGYWNrDHdWvpUmHyEsgCtIwwo3bqPtV4tR5tuPaUhTOo/kvhVwd8XwwOllGYkbg=="
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"serve-static": {
|
"serve-static": {
|
||||||
"version": "1.14.2",
|
"version": "1.14.2",
|
||||||
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz",
|
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz",
|
||||||
|
|||||||
@@ -20,10 +20,13 @@
|
|||||||
"homepage": "https://github.com/matt-fidd/stratos#readme",
|
"homepage": "https://github.com/matt-fidd/stratos#readme",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"bcrypt": "^5.0.1",
|
"bcrypt": "^5.0.1",
|
||||||
|
"body-parser": "^1.19.1",
|
||||||
"express": "^4.17.2",
|
"express": "^4.17.2",
|
||||||
"express-mysql-session": "^2.1.7",
|
"express-mysql-session": "^2.1.7",
|
||||||
"express-session": "^1.17.2",
|
"express-session": "^1.17.2",
|
||||||
"mysql2": "^2.3.3"
|
"mysql2": "^2.3.3",
|
||||||
|
"serve-favicon": "^2.5.0",
|
||||||
|
"serve-static": "^1.14.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"eslint": "^8.6.0",
|
"eslint": "^8.6.0",
|
||||||
|
|||||||
Reference in New Issue
Block a user