-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.js
More file actions
40 lines (32 loc) · 1.19 KB
/
server.js
File metadata and controls
40 lines (32 loc) · 1.19 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
import express from "express";
import helmet from "helmet";
import bodyParser from "body-parser";
import passport from "passport";
import passportConfig from "./config/passportConfig.js";
import { setupCors } from "./config/corsConfig.js";
import { setupSession } from "./config/sessionConfig.js";
import jokeRoutes from "./routes/jokeRoutes.js";
import userRoutes from "./routes/userRoutes.js";
import commentRoutes from "./routes/commentRoutes.js";
import mbThreadRoutes from "./routes/mbThreadRoutes.js";
import mbCommentRoutes from "./routes/mbCommentRoutes.js";
import { setupLogging } from "./config/loggingConfig.js";
// make server
const server = express();
// basic middleware
setupCors(server);
server.use(helmet());
setupLogging(server);
server.use(bodyParser.urlencoded({ limit: "50mb", extended: true }));
server.use(bodyParser.json({ limit: "50mb", extended: true }));
setupSession(server);
passportConfig(passport, server);
// rate limits?
// routes
server.use("/api/jokes/", jokeRoutes);
server.use("/api/users/", userRoutes);
server.use("/api/comments/", commentRoutes);
server.use("/api/mbthread/", mbThreadRoutes);
server.use("/api/mbcomment/", mbCommentRoutes);
// export
export default server;