const express = require('express');
const jwt = require('jsonwebtoken');
const app = express();
app.use(express.json());
// Auth Middleware
const authenticateToken = (req, res, next) => {
const authHeader = req.headers['authorization'];
const token = authHeader && authHeader.split(' ')[1];
if (!token) return res.status(401).json({ message: 'No token provided' });
jwt.verify(token, 'SECRET_KEY', (err, decodedUser) => {
if (err) return res.status(403).json({ message: 'Invalid token' });
// السطر المشتبه به
req.user = decodedUser;
});
next(); // يتم استدعاؤها هنا بشكل مباشر!
};
// Protected Route
app.get('/api/profile', authenticateToken, (req, res) => {
// يحدث الخطأ هنا لأن req.user لم يُجهّز بعد
res.json({ userId: req.user.id, status: 'Active' });
});
app.listen(3000, () => console.log('Server running on port 3000'));
التعليقات (0)
لا يوجد تعليقات بعد — كن أول من يعلّق!
سجّل دخولك لإضافة تعليق
تسجيل الدخول