41 lines
1.4 KiB
JavaScript
41 lines
1.4 KiB
JavaScript
//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();
|