//Imports const express = require("express"); const cors = require("cors"); const bodyParser = require("body-parser"); const bearerToken = require("express-bearer-token"); //Local Imports const { Web, StatusCode, Server } = require("./config.json"); //Import Routers const stashRouter = require("./routes/stash"); //Define Constants & Setup Database const app = express(); const port = Server.Port; const debuggingMode = Server.Debug; const viewOptions = { beautify: false }; const corsOptions = { origin: "*", optionsSuccessStatus: 200, }; //Set Up Express session and View engine app.use(cors(corsOptions)); app.use(bearerToken()); app.use(bodyParser.json({ limit: Server.BodyLimit })); // parse application/json app.use(bodyParser.urlencoded({ limit: Server.BodyLimit, extended: false })); // parse application/x-www-form-urlencoded //Test if there is a app.use(["/api/nubian/stash", "/api/stash", "/stash"], stashRouter); const startServer = () => { server = app.listen(port, () => { console.log("Node version:" + process.versions.node); console.log(`Duneserver listening on port ${port}!`); }); server.timeout = 10 * 60 * 1000; server.on("connection", (socket) => { // 10 minutes timeout socket.setTimeout(10 * 60 * 1000); }); process.on("SIGINT", () => { console.log("Recieved Shutdown Signal!"); process.exit(); }); }; startServer();