Request constructor

Request(
  1. String method,
  2. Uri uri,
  3. Uri baseUri, {
  4. dynamic body,
  5. Map<String, dynamic>? parameters,
  6. Map<String, String> headers = const {},
  7. bool multipart = false,
  8. List<PartValue> parts = const [],
  9. Object? tag,
  10. ListFormat? listFormat,
  11. @Deprecated('Use listFormat instead') bool? useBrackets,
  12. bool? includeNullQueryVars,
})

This class represents an HTTP request that can be made with Chopper.

Implementation

Request(
  String method,
  this.uri,
  this.baseUri, {
  this.body,
  Map<String, dynamic>? parameters,
  Map<String, String> headers = const {},
  this.multipart = false,
  this.parts = const [],
  this.tag,
  this.listFormat,
  @Deprecated('Use listFormat instead') this.useBrackets,
  this.includeNullQueryVars,
})  : assert(
          !baseUri.hasQuery,
          'baseUri should not contain query parameters.'
          'Use a request interceptor to add default query parameters'),
      // Merge uri.queryParametersAll in the final parameters object so the request object reflects all configured queryParameters
      parameters = {...uri.queryParametersAll, ...?parameters},
      super(
        method,
        buildUri(
          baseUri,
          uri,
          {...uri.queryParametersAll, ...?parameters},
          listFormat: listFormat,
          // ignore: deprecated_member_use_from_same_package
          useBrackets: useBrackets,
          includeNullQueryVars: includeNullQueryVars,
        ),
      ) {
  this.headers.addAll(headers);
}