Skip to main content

request.getCurrentUser

Get the currently logged-in admin user data. This function is available on the Express request object.

Syntax​

request.getCurrentUser(): User | undefined

Parameters​

None.

Return Value​

Returns User object if logged in, or undefined if not logged in.

The user object contains admin user data without the password field.

Examples​

Basic Usage​

export default async function profileMiddleware(request, response) {
const user = request.getCurrentUser();

if (!user) {
response.status(401).json({
success: false,
message: 'Not logged in'
});
return;
}

response.json({
success: true,
user: {
id: user.admin_user_id,
email: user.email,
full_name: user.full_name
}
});
}

With Check​

export default async function dashboardMiddleware(request, response) {
if (!request.isUserLoggedIn()) {
response.redirect('/admin/login');
return;
}

const user = request.getCurrentUser();

response.json({
welcome: `Welcome back, ${user.full_name}`,
email: user.email
});
}

Access User Properties​

export default async function userInfoMiddleware(request, response) {
const user = request.getCurrentUser();

if (user) {
console.log('User ID:', user.admin_user_id);
console.log('Email:', user.email);
console.log('Full Name:', user.full_name);
console.log('Status:', user.status);
}

response.json({ user });
}

In Middleware​

export default async function auditMiddleware(request, response, next) {
const user = request.getCurrentUser();

// Log action with user info
if (user) {
console.log(`Action by: ${user.email}`);
}

next();
}

See Also​