This repository was archived by the owner on Sep 7, 2022. It is now read-only.
This repository was archived by the owner on Sep 7, 2022. It is now read-only.
auth/user-token-expired thrown by getIdToken #407
Open
Description
I have a refresh method in my code that calls firebaseUser?.getIdToken();
. The problem start to happen when user is in the app for approx 1h. the code throws auth/user-token-expired
error and the user is force to logout.
Future<String?> _refreshToken() async {
var firebaseUser = await firebaseAuth.currentUser;
_tokenCreationDate = DateTime.now();
try {
_token = await firebaseUser?.getIdToken(true);
return _token;
} on PlatformException catch (e) {
if (e.code == 'ERROR_USER_TOKEN_EXPIRED') {
await errorTracking.captureException(
exception: e,
stackTrace:
'firebase _refreshToken PlatformException ERROR_USER_TOKEN_EXPIRED');
await signOut();
throw TokenExpiredError(e);
}
} catch (e) {
logger.e(e);
}
return null;
}
it goes straight to the catch. From the documentation I know that:
Firebase ID tokens are short lived and last for an hour; the refresh token can be used to retrieve new ID tokens. Refresh tokens expire only when one of the following occurs: The user is deleted. The user is disabled. Which is not the case here. Is there any other reason why the method throws exception?
Metadata
Metadata
Assignees
Labels
No labels