23 lines
784 B
JavaScript
23 lines
784 B
JavaScript
import User from '../models/community/user.js';
|
|
import { updateUserTimestamp } from '../utils/redis.js';
|
|
|
|
export const authenticate = async (req, res, next) => {
|
|
const { userid: userId, authcode: authCode } = req.headers;
|
|
if (!userId || !authCode) {
|
|
return res.status(401).json({ error: 'Unauthorized: Missing credentials' });
|
|
}
|
|
const user = await User.findOne({ where: { hashedId: userId, authCode } });
|
|
if (!user) {
|
|
return res.status(401).json({ error: 'Unauthorized: Invalid credentials' });
|
|
}
|
|
try {
|
|
await updateUserTimestamp(user.id);
|
|
} catch (error) {
|
|
console.error('Fehler beim Aktualisieren des Zeitstempels:', error);
|
|
}
|
|
next();
|
|
};
|
|
|
|
// Default export für Kompatibilität
|
|
export default { authenticate };
|