splitAuthenticateHeader function
Implementation
Map<String, String>? splitAuthenticateHeader(String header) {
if (!header.startsWith('Digest ')) {
return null;
}
header = header.substring(7); // remove 'Digest '
var ret = <String, String>{};
final components = header.split(',').map((token) => token.trim());
for (var component in components) {
final kv = component.split('=');
ret[kv[0]] = kv.getRange(1, kv.length).join('=').replaceAll('"', '');
}
return ret;
}