onRequest method

  1. @override
void onRequest(
  1. RequestOptions options,
  2. RequestInterceptorHandler handler
)

Called when the request is about to be sent.

Implementation

@override
void onRequest(
  RequestOptions options,
  RequestInterceptorHandler handler,
) {
  final metadataAuthInfo = getAuthInfo(options, (secure) => (secure['type'] == 'http' && secure['scheme'] == 'basic') || secure['type'] == 'basic');
  for (final info in metadataAuthInfo) {
    final authName = info['name'] as String;
    final basicAuthInfo = authInfo[authName];
    if (basicAuthInfo != null) {
      final basicAuth = 'Basic ${base64Encode(utf8.encode('${basicAuthInfo.username}:${basicAuthInfo.password}'))}';
      options.headers['Authorization'] = basicAuth;
      break;
    }
  }
  super.onRequest(options, handler);
}