sanitizeUriForLogging static method
Implementation
static String sanitizeUriForLogging(Uri uri) {
if (uri.queryParametersAll.isEmpty) {
return uri.toString();
}
final sanitizedPairs = <String>[];
uri.queryParametersAll.forEach((key, values) {
final isSensitive = _isSensitiveKey(key);
final sourceValues = values.isEmpty ? const [''] : values;
for (final value in sourceValues) {
final safeValue = isSensitive ? _redactedValue : value;
sanitizedPairs.add(
'${Uri.encodeQueryComponent(key)}=${Uri.encodeQueryComponent(safeValue)}',
);
}
});
final sanitizedQuery = sanitizedPairs.join('&');
return uri.replace(query: sanitizedQuery).toString();
}