checkResourceStatus function
Implementation
Future<bool> checkResourceStatus(
String resUrl, {
bool fileFlag = true,
}) async {
final (:accessToken, :dPopToken) = await getTokensForResource(resUrl, 'GET');
final response = await http.get(
Uri.parse(resUrl),
headers: <String, String>{
'Content-Type': fileFlag ? '*/*' : 'application/octet-stream',
'Authorization': 'DPoP $accessToken',
'Link': fileFlag
? '<http://www.w3.org/ns/ldp#Resource>; rel="type"'
: '<http://www.w3.org/ns/ldp#BasicContainer>; rel="type"',
'DPoP': dPopToken,
},
);
if (response.statusCode == 200 || response.statusCode == 204) {
return true;
} else if (response.statusCode == 404) {
return false;
} else {
debugPrint('WARN: Failed to check resource status.\n'
'URL: $resUrl\n'
'ERR: ${response.body}');
return false;
}
}