api: send some user data alongside the verified token
Parents:
2674dde1 file(s) changed
- api/src/controllers/auth.ts +11 -2
api/src/controllers/auth.ts
@@ -3,7 +3,8 @@ import {
3 3 authenticateUser,
4 4 generateToken,
5 5 initiatePasswordReset,
6 - resetPassword
6 + resetPassword,
7 + findUserByEmail
7 8 } from '@app/models/user';
8 9 import {
9 10 validateRequiredFields
@@ -108,11 +109,18 @@ }
108 109
109 110 const token = authHeader.substring(7);
110 111 const payload = verifyToken(token);
112 + const user = await findUserByEmail(payload.email);
111 113
112 114 res.json({
113 115 valid: true,
114 116 userId: payload.userId,
115 - email: payload.email
117 + email: payload.email,
118 + user: {
119 + firstName: user?.firstName,
120 + email: user?.email,
121 + lastName: user?.lastName,
122 + updatedAt: user?.updatedAt
123 + }
116 124 });
117 125 } catch (err: any) {
118 126 if (err.name === 'JsonWebTokenError' || err.name === 'TokenExpiredError') {
@@ -121,4 +129,4 @@ }
121 129 next(err);
122 130 }
123 131 }
124 - };
132 + };