parseJwt function

Map<String, dynamic> parseJwt(
  1. String token
)

Extracts the JSON payload from an encoded JWT token

Implementation

Map<String, dynamic> parseJwt(String token) {
  final parts = token.split('.');
  if (parts.length != 3) {
    throw Exception(
        '@userfront/flutter: parseJwt: tried to parse an invalid token (fewer than 3 parts)');
  }
  final payload = _decodeBase64(parts[1]);
  final payloadMap = json.decode(payload);
  if (payloadMap is! Map<String, dynamic>) {
    throw Exception(
        '@userfront/flutter: parseJwt: tried to parse an invalid token (invalid payload JSON)');
  }
  return payloadMap;
}