-
Notifications
You must be signed in to change notification settings - Fork 0
/
app.js
29 lines (23 loc) · 762 Bytes
/
app.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
const express = require('express')
const router = require('./src/router/api')
const app = new express();
// body perser implementation
const bodyParser = require('body-parser')
app.use(bodyParser.json())
// sequrity middleare
const ratelimit = require('express-rate-limit')
const helmet = require('helmet')
const mongoSanitizer = require('express-mongo-sanitize')
const cors = require('cors')
require('dotenv').config()
const imageUrl = process.env.BASE_URL;
// sequrity middleare implementation
app.use(cors())
app.use(`/images`, express.static(`${__dirname}/public`));
app.use(helmet())
app.use(mongoSanitizer())
// rate limiter implementation
ratelimit({windowMs: 15 * 60 * 100, max: 3000})
// api in-point
app.use("/api/v1",router)
module.exports = app