handle method
Implementation
@mustCallSuper
@override
handle(Request req) async {
if (basic) {
bool loggedIn = await getSession<bool?>('logged_in') ?? false;
String guard = await getSession<String?>('auth_guard') ?? '';
if (loggedIn && guard.isNotEmpty) {
Map<String, dynamic> user =
await getSession<Map<String, dynamic>?>('auth_user') ?? {};
Auth().guard(guard).login(user[guard]);
} else {
throw Unauthenticated(
message: loginPath,
responseType: ResponseType.html,
);
}
} else {
String? token = req.header('authorization')?.replaceFirst('Bearer ', '');
try {
if (guard == null) {
await Auth().check(token ?? '');
} else {
await Auth().guard(guard!).check(token ?? '');
}
} on JWTExpiredException {
throw Unauthenticated(message: 'Token expired');
}
}
}