fcsc_ipi_backend/app/middleware/auth.middleware.js
2025-12-04 13:25:54 +05:30

48 lines
1.2 KiB
JavaScript

const jwt = require("jsonwebtoken");
require("dotenv").config();
// module.exports = function (req, res, next) {
// const authHeader = req.headers["authorization"];
// const token = authHeader && authHeader.split(" ")[1]; // Expect "Bearer <token>"
// if (!token) return res.status(403).json({ message: "Access denied, token missing" });
// jwt.verify(token, process.env.JWT_SECRET, (err, decoded) => {
// if (err) return res.status(401).json({ message: "Invalid or expired token" });
// req.user = decoded;
// next();
// });
// };
const authJWT = (req, res, next) => {
try {
const token =
req.cookies?.auth_token ||
(req.headers.authorization && req.headers.authorization.split(" ")[1]);
if (!token) {
return res
.status(403)
.json({ status: "failed", message: "Access denied, token missing" });
}
console.log('token ='+token)
jwt.verify(token, process.env.JWT_SECRET, (err, decoded) => {
if (err) return res.status(401).json({ message: "Invalid or expired token" });
req.user = decoded;
next();
});
} catch (err) {
return res
.status(403)
.json({ status: "failed", message: "Unauthorized: Invalid token" });
}
};
module.exports = authJWT;