extractRetryAfter static method

Duration? extractRetryAfter(
  1. Map<String, dynamic>? headers
)

Extract retry-after duration from response headers

Implementation

static Duration? extractRetryAfter(Map<String, dynamic>? headers) {
  if (headers == null) return null;

  final retryAfter = headers['retry-after'] ?? headers['Retry-After'];
  if (retryAfter == null) return null;

  if (retryAfter is int) {
    return Duration(seconds: retryAfter);
  } else if (retryAfter is String) {
    final seconds = int.tryParse(retryAfter);
    if (seconds != null) {
      return Duration(seconds: seconds);
    }
  }

  return null;
}