Request constructor
Request(
- Object input, {
- RequestCache? cache,
- RequestCredentials? credentials,
- RequestDestination? destination,
- String? integrity,
- String? method,
- RequestMode? mode,
- RequestRedirect? redirect,
- String? referrer,
- ReferrerPolicy? referrerPolicy,
- Object? headers,
- Object? body,
Implementation
factory Request(
Object input, {
RequestCache? cache,
RequestCredentials? credentials,
RequestDestination? destination,
String? integrity,
String? method,
RequestMode? mode,
RequestRedirect? redirect,
String? referrer,
ReferrerPolicy? referrerPolicy,
Object? headers,
Object? body,
}) {
final base = switch (input) {
Request request => request,
_ => null,
};
final request = Request._();
request._storage[#url] =
base == null ? URL(input, defaultBaseURL).toString() : base.url;
request._storage[#headers] =
(headers == null ? base?.headers : null) ?? Headers(headers);
request._storage[#cache] = cache ?? base?.cache;
request._storage[#credentials] = credentials ?? base?.credentials;
request._storage[#destination] = destination ?? base?.destination;
request._storage[#integrity] = integrity ?? base?.integrity;
request._storage[#method] = method ?? base?.method;
request._storage[#mode] = mode ?? base?.mode;
request._storage[#redirect] = redirect ?? base?.redirect;
request._storage[#referrer] = referrer ?? base?.referrer;
request._storage[#referrerPolicy] = referrerPolicy ?? base?.referrerPolicy;
request.initBody(body ?? base?.body);
return request;
}