From a1c6367877977546f227c128ad9d06d6da2a5296 Mon Sep 17 00:00:00 2001
From: Renzo Beux <renzobeux@gmail.com>
Date: Sat, 23 Oct 2021 00:15:44 -0300
Subject: [PATCH] validate method

---
 src/Controllers/UserCotroller.ts | 19 +++++++++++++++++++
 1 file changed, 19 insertions(+)

diff --git a/src/Controllers/UserCotroller.ts b/src/Controllers/UserCotroller.ts
index f2d703f..e6944bd 100644
--- a/src/Controllers/UserCotroller.ts
+++ b/src/Controllers/UserCotroller.ts
@@ -140,12 +140,31 @@ const login = async (req: Request, res: Response): Promise<Response> => {
   }
 };
 
+const validate = async (req: Request, res: Response): Promise<Response> => {
+  const { token } = req.body;
+  if (token) {
+    jwt.verify(token, secret.auth, (error: Error, decoded: {id: number; type: number}) => {
+      if (error) {
+        const message = 'Invalid token';
+        return res.status(401).send({ message });
+      }
+      const userId = decoded.id;
+      return res.status(200).send({ userId });
+    });
+  } else {
+    return res.status(400).send('auth token not supplied');
+  }
+  return res.status(500).send();
+};
+
 router.route('/login')
   .post(login);
 
 router.route('/')
   .post(create);
 
+router.validate('/validate', validate);
+
 router.use('/', authorized);
 
 router.route('/')
-- 
GitLab