fetchProtectedResourceMetadata method
Fetch and parse an RFC 9728 Protected Resource Metadata document.
Implementation
Future<ProtectedResourceMetadata> fetchProtectedResourceMetadata(
Uri url) async {
final response = await _httpClient.get(
url,
headers: {'Accept': 'application/json'},
);
if (response.statusCode != 200) {
throw OAuthError(
error: 'protected_resource_discovery_failed',
errorDescription:
'Failed to fetch Protected Resource Metadata ($url): '
'${response.statusCode}',
);
}
final json = jsonDecode(response.body) as Map<String, dynamic>;
return ProtectedResourceMetadata.fromJson(json);
}