checkStatus static method
- String url
Perform a HEAD request to check resource existence.
Implementation
static Future<ResourceStatus> checkStatus(String url) async {
try {
final tokens = await PodAuth.getTokens(url, 'HEAD');
final response = await http.head(
Uri.parse(url),
headers: {
'Accept': '*/*',
'Authorization': 'DPoP ${tokens.accessToken}',
'Connection': 'keep-alive',
'DPoP': tokens.dPopToken,
},
);
switch (response.statusCode) {
case 200:
case 204:
return ResourceStatus.exist;
case 404:
return ResourceStatus.notExist;
case 401:
case 403:
return ResourceStatus.forbidden;
default:
return ResourceStatus.unknown;
}
} catch (e) {
debugPrint('PodHttp.checkStatus() error: $e');
return ResourceStatus.unknown;
}
}