Request<T>.uri constructor

Request<T>.uri(
  1. String uri, {
  2. String method = "GET",
  3. Map<String, dynamic>? queryParameters,
  4. Map<String, dynamic>? headers,
  5. T? body,
})

Implementation

factory Request.uri(
  String uri, {
  String method = "GET",
  Map<String, dynamic>? queryParameters,
  Map<String, dynamic>? headers,
  T? body,
}) {
  var u = Uri.parse(uri);

  return Request<T>(
    method: method.toUpperCase(),
    uri: Uri(
      scheme: u.scheme,
      host: u.host,
      port: u.port,
      path: u.path,
      fragment: u.fragment != "" ? u.fragment : null,
      queryParameters: {
        ...u.queryParameters,
        ...?queryParameters?.map(
          (key, value) => MapEntry(
              key,
              value is List
                  ? value.map((e) => e.toString())
                  : [value.toString()]),
        ),
      },
    ),
    headers: headers,
    body: body,
  );
}