last-shield
Version:
Last-Shield is a powerful and flexible security library designed to enhance the protection of your web applications.
23 lines (22 loc) • 777 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.authMiddleware = authMiddleware;
const server_1 = require("next/server");
const jsonwebtoken_1 = __importDefault(require("jsonwebtoken"));
function authMiddleware(req, p0, next) {
const token = req.cookies.token;
if (!token) {
return server_1.NextResponse.redirect('/login');
}
try {
const decoded = jsonwebtoken_1.default.verify(token, 'your-secret-key');
req.user = decoded;
return server_1.NextResponse.next();
}
catch (error) {
return server_1.NextResponse.redirect('/login');
}
}