-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
36 lines (30 loc) · 939 Bytes
/
Copy pathindex.js
File metadata and controls
36 lines (30 loc) · 939 Bytes
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
const db = require('./loaders/database.js');
const express = require('express');
require('dotenv').config();
const app = express();
const port = process.env.PORT || 3000;
app.use(express.json());
app.use(express.urlencoded({extended: true}));
// Route imports
const recordsRoute = require('./routes/records.js');
const notFoundRoute = require('./routes/notFound.js');
const swaggerRoutes = require('./routes/swagger.js');
app.use('/records', recordsRoute);
app.use(swaggerRoutes);
app.use(notFoundRoute);
app.use((err, req, res, next) => {
const status = err.getStatusCode ? err.getStatusCode() : 500
return res.status(status).json({
code: 3,
msg: err.message
});
});
// create server after DB connection provided
app.on('db_connected', () => {
app.listen(process.env.PORT, () => {
app.emit('up');
console.log('listening on specified port');
});
});
db.connect({expressApp: app});
module.exports = app;