From 591bb29bce3e433c460bcab230580344a0db90ca Mon Sep 17 00:00:00 2001 From: Adarsh Date: Sun, 11 Feb 2024 14:35:02 +0530 Subject: [PATCH 1/2] feat:Added get route for dashboard --- controller/dashboard.js | 18 ++++++++++++++++++ index.js | 12 +++++------- middlewares/auth.js | 2 +- yarn.lock | 18 ++++++++++++++++++ 4 files changed, 42 insertions(+), 8 deletions(-) create mode 100644 controller/dashboard.js diff --git a/controller/dashboard.js b/controller/dashboard.js new file mode 100644 index 0000000..20f08d6 --- /dev/null +++ b/controller/dashboard.js @@ -0,0 +1,18 @@ +const mongoose = require('mongoose') +const { User } = require('../model/User') + +exports.getUserData = async(req,res)=>{ + try{ + const personalEmail = req.user.personalEmail; + const user = await User.findOne({personalEmail}); + console.log("user: ",user) + if(!user) return res.status(400).json({ success: false, message: "User not found" }) + res.status(200).json({ success: true, message:"Request successful" }) + res.send(user) + } + catch(e){ + console.log(e) + res.status(400).json({ success: false, message: e.message }) + } + +} \ No newline at end of file diff --git a/index.js b/index.js index 36c167e..60e0740 100644 --- a/index.js +++ b/index.js @@ -5,16 +5,15 @@ const { loginWithPassword, loginWithOtp } = require("./controller/user") const { update } = require("./controller/update") const { register } = require("./controller/register") const { verifyOTP } = require("./controller/user") -const authenticateToken = require("./middlewares/auth") -const { upload } = require("./controller/update") - +const {authenticateToken} = require("./middlewares/auth") +const { getUserData } = require("./controller/dashboard") const { client } = require("./redis") const app = express(); require('dotenv').config() try { mongoose.connect(process.env.MONGO_URI).then(() => console.log("Connected to mongoose")) - client.connect(); + client.connect("redis://red-cn37f87109ks73eo6930:6379"); client.on("error", err => console.log("Redis client error: ", err)); client.on("connect", () => console.log("Connected to redis")); } catch (e) { @@ -25,12 +24,11 @@ app.use(cors()) app.use(express.json()) app.use(express.urlencoded({ extended: true })) - app.post("/login/password", loginWithPassword) app.post("/login/otp", loginWithOtp) app.post("/login/verify", verifyOTP) -console.log(authenticateToken , update) -app.put("/update", authenticateToken , update ) +// app.put("/update", authenticateToken, update) +app.get("/dashboard/",authenticateToken,getUserData) app.post("/register", register) app.listen(8000, () => { console.log("Listening on port 8000...") diff --git a/middlewares/auth.js b/middlewares/auth.js index 67bcb6e..eeffa6a 100644 --- a/middlewares/auth.js +++ b/middlewares/auth.js @@ -4,7 +4,7 @@ const { User } = require("../model/User"); const authenticateToken = (req, res, next) => { const token = req.headers.authorization && req.headers.authorization.split(' ')[1]; if (!token) return res.status(401).json({ success: false, message: "Login error" }); - jwt.verify(token, "secretKey", (err, decoded) => { + jwt.verify(token, process.env.SECRET_KEY, (err, decoded) => { if (err) { return res.status(401).json({ success: false, message: "Login error" }) } else { diff --git a/yarn.lock b/yarn.lock index f0f9b0b..416d410 100644 --- a/yarn.lock +++ b/yarn.lock @@ -211,6 +211,14 @@ chokidar@^3.5.2: optionalDependencies: fsevents "~2.3.2" +cloudinary@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/cloudinary/-/cloudinary-2.0.1.tgz#9100330cd085539fe2a8131f1d63a77af1e4e2fd" + integrity sha512-+j5GswtCwjAmLhjs/K26id4Zvh53zL/YWzgyenxgbdXdXmdFM8d5H1FV1sJCkpS77AqylJKBzyztySdILM+F+A== + dependencies: + lodash "^4.17.21" + q "^1.5.1" + cluster-key-slot@1.1.2: version "1.1.2" resolved "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.2.tgz" @@ -634,6 +642,11 @@ lodash.once@^4.0.0: resolved "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz" integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== +lodash@^4.17.21: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + lru-cache@^6.0.0: version "6.0.0" resolved "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz" @@ -851,6 +864,11 @@ punycode@^2.3.0: resolved "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz" integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== +q@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + integrity sha512-kV/CThkXo6xyFEZUugw/+pIOywXcDbFYgSct5cT3gqlbkBE1SJdwy6UQoZvodiWF/ckQLZyDE/Bu1M6gVu5lVw== + qs@6.11.0: version "6.11.0" resolved "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz" From 6165143cb20f08ca960fd2f961d85831057d9756 Mon Sep 17 00:00:00 2001 From: Adarsh Date: Sun, 11 Feb 2024 15:17:40 +0530 Subject: [PATCH 2/2] fix:fixed Bugs in Dashboard and auth --- controller/dashboard.js | 8 +++----- index.js | 2 +- middlewares/auth.js | 2 +- 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/controller/dashboard.js b/controller/dashboard.js index 20f08d6..3ae402a 100644 --- a/controller/dashboard.js +++ b/controller/dashboard.js @@ -3,12 +3,10 @@ const { User } = require('../model/User') exports.getUserData = async(req,res)=>{ try{ - const personalEmail = req.user.personalEmail; - const user = await User.findOne({personalEmail}); - console.log("user: ",user) + const user = req.user; + // console.log("user: ",user) if(!user) return res.status(400).json({ success: false, message: "User not found" }) - res.status(200).json({ success: true, message:"Request successful" }) - res.send(user) + res.status(200).json({ success: true, message:"Request successful",user }) } catch(e){ console.log(e) diff --git a/index.js b/index.js index 60e0740..7212214 100644 --- a/index.js +++ b/index.js @@ -28,7 +28,7 @@ app.post("/login/password", loginWithPassword) app.post("/login/otp", loginWithOtp) app.post("/login/verify", verifyOTP) // app.put("/update", authenticateToken, update) -app.get("/dashboard/",authenticateToken,getUserData) +app.get("/dashboard",authenticateToken,getUserData) app.post("/register", register) app.listen(8000, () => { console.log("Listening on port 8000...") diff --git a/middlewares/auth.js b/middlewares/auth.js index eeffa6a..f5c0899 100644 --- a/middlewares/auth.js +++ b/middlewares/auth.js @@ -8,7 +8,7 @@ const authenticateToken = (req, res, next) => { if (err) { return res.status(401).json({ success: false, message: "Login error" }) } else { - User.findById(decoded.userId).exec().then(data => { + User.findById(decoded.userId.id).exec().then(data => { if (data) { req.user = decoded; next();