-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
51 lines (47 loc) · 1.67 KB
/
index.js
File metadata and controls
51 lines (47 loc) · 1.67 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
41
42
43
44
45
46
47
48
49
50
51
const express = require("express");
require("dotenv").config();
const cors = require("cors");
const { connectBD } = require("./config/connectBD");
const verifyHeader = require("./middleware/verifyHeader");
const logInController = require("./controller/login");
const resetController = require("./controller/Reset");
const likes = require("./controller/likes");
const {
deletePost,
updatePost,
createNewPost,
getAllPost,
} = require("./controller/post");
const registerUser = require("./controller/register");
const { getPostComments, comment } = require("./controller/comment");
const app = express();
app.use(cors());
app.use(express.json());
app.get("/", (req, res) =>
res.status(200).send({ status: true, message: "Hello World" })
);
const verifyUser = async (req, res, next) => {
try {
const { user } = req.headers;
const IsUser = await UserModel.find({ _id: user });
if (IsUser) {
next();
}
} catch (error) {
res.status(401).send({ status: false, message: "Invalid Credential" });
}
};
app.post("/user/register", registerUser);
app.post("/user/login", logInController);
app.put("/user/reset", resetController);
app.get("/posts", getAllPost);
app.post("/user/post", verifyHeader, verifyUser, createNewPost);
app.put("/user/post/:id", verifyHeader, verifyUser, updatePost);
app.delete("/user/post/:id", verifyHeader, verifyUser, deletePost);
app.post("/user/post/like/:id", verifyHeader, verifyUser, likes);
app.post("/user/post/comment/:id", verifyHeader, verifyUser, comment);
app.get("/user/post/comment/:id", verifyHeader, verifyUser, getPostComments);
app.listen(process.env.PORT || 5001, () => {
connectBD();
console.log("listening on port " + 5001);
});