parseJwtHeader static method
Decodes the header portion of a Firebase JWT token.
Returns a map containing the header claims.
Throws an Exception if token is malformed or cannot be decoded.
Implementation
static Map<String, dynamic> parseJwtHeader(String token) {
final parts = token.split('.');
if (parts.length != 3) {
throw Exception('invalid token');
}
final headerJson = _decodeBase64(parts[0]);
final headerMap = json.decode(headerJson);
if (headerMap is! Map<String, dynamic>) {
throw Exception('invalid header');
}
return headerMap;
}