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