-
Notifications
You must be signed in to change notification settings - Fork 11
/
Copy pathserver.js
49 lines (38 loc) · 1.38 KB
/
server.js
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
41
42
43
44
45
46
47
48
49
require("dotenv").config()
const express = require('express');
const cors = require('cors');
const verifyJWT = require('./middleware/verifyJWT');
const cookieParser = require("cookie-parser");
const partyRoutes = require("./routes/parties");
const salespersonRoutes = require("./routes/salespersons");
const clientRoutes = require("./routes/clients");
const userRoutes = require("./routes/users");
const path = require("path");
const PORT = process.env.PORT || 4000;
const app = express();
app.use(cors({credentials: true, origin: [process.env.PRODUCTION_FRONTEND_ORIGIN, process.env.FRONTEND_ORIGIN]}));
app.use(express.json());
if(process.env.NODE_ENV === "production"){
app.use(express.static(path.join(__dirname,"/frontend/build")));
}
app.use(cookieParser());
app.use((req, res, next) => {
console.log(req.path, req.method);
next();
})
app.use("/api/auth",userRoutes);
app.use('/api/refresh', require('./routes/refresh'));
app.use('/api/logout', require('./routes/logout'));
app.use("/api/parties",verifyJWT, partyRoutes);
app.use("/api/salespersons",verifyJWT, salespersonRoutes);
app.use("/api/clients", clientRoutes);
app.get('/*', function(req, res) {
res.sendFile(path.join(__dirname, 'frontend/build/index.html'), function(err) {
if (err) {
res.status(500).send(err)
}
})
})
app.listen(PORT, () => {
console.log("listening on port",PORT);
})