This repository has been archived on 2024-08-10. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
nubian/src/server.js

40 lines
1.4 KiB
JavaScript
Raw Normal View History

2021-07-24 15:42:36 -06:00
//Imports
const express = require("express");
const session = require("express-session");
const bodyParser = require("body-parser");
const secret = require("uuid-with-v6").v6;
//Local Imports
const { Web, StatusCode, Server } = require("./config.json");
//Import Routers
const stashRouter = require("./routes/stash");
const storage = require("./api/storage");
//Define Constants & Setup Database
const app = express();
const port = Server.Port;
const debuggingMode = Server.Debug;
const viewOptions = { beautify: false };
//Set Up Express session and View engine
app.use(session({ secret: secret(), saveUninitialized: false, resave: false }));
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/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();
});
setInterval(() => storage.cleanZips(), Server.ZipRemovalInterval);
};
startServer();