HttpClientResponse class

HTTP response for a client connection.

The body of a HttpClientResponse object is a Stream of data from the server. Listen to the body to handle the data and be notified when the entire body is received.

new HttpClient().get('localhost', 80, '/file.txt')
     .then((HttpClientRequest request) => request.close())
     .then((HttpClientResponse response) {
       response.transform(utf8.decoder).listen((contents) {
         // handle data
       });
     });
Implemented types

Constructors

HttpClientResponse()

Properties

certificateX509Certificate?
read-only
Returns the certificate of the HTTPS server providing the response. Returns null if the connection is not a secure TLS or SSL connection.
compressionStateHttpClientResponseCompressionState
@Since("2.4"), read-only
The compression state of the response. [...]
connectionInfoHttpConnectionInfo?
read-only
Gets information about the client connection. Returns null if the socket is not available.
contentLengthint
read-only
Returns the content length of the response body. Returns -1 if the size of the response body is not known in advance. [...]
cookiesList<Cookie>
read-only
Cookies set by the server (from the 'set-cookie' header).
firstFuture<List<int>>
read-only, inherited
The first element of this stream. [...]
hashCodeint
read-only, inherited
The hash code for this object. [...]
headersHttpHeaders
read-only
Returns the client response headers. [...]
isBroadcastbool
read-only, inherited
Whether this stream is a broadcast stream.
isEmptyFuture<bool>
read-only, inherited
Whether this stream contains any elements. [...]
isRedirectbool
read-only
Returns whether the status code is one of the normal redirect codes HttpStatus.movedPermanently, HttpStatus.found, HttpStatus.movedTemporarily, HttpStatus.seeOther and HttpStatus.temporaryRedirect.
lastFuture<List<int>>
read-only, inherited
The last element of this stream. [...]
lengthFuture<int>
read-only, inherited
The number of elements in this stream. [...]
persistentConnectionbool
read-only
Gets the persistent connection state returned by the server. [...]
reasonPhraseString
read-only
Returns the reason phrase associated with the status code. [...]
redirectsList<RedirectInfo>
read-only
Returns the series of redirects this connection has been through. The list will be empty if no redirects were followed. redirects will be updated both in the case of an automatic and a manual redirect.
runtimeTypeType
read-only, inherited
A representation of the runtime type of the object.
singleFuture<List<int>>
read-only, inherited
The single element of this stream. [...]
statusCodeint
read-only
Returns the status code. [...]

Methods

any(bool test(List<int> element)) → Future<bool>
inherited
Checks whether test accepts any element provided by this stream. [...]
asBroadcastStream({void onListen(StreamSubscription<List<int>> subscription), void onCancel(StreamSubscription<List<int>> subscription)}) → Stream<List<int>>
inherited
Returns a multi-subscription stream that produces the same events as this. [...]
asyncExpand<E>(Stream<E>? convert(List<int> event)) → Stream<E>
inherited
Transforms each element into a sequence of asynchronous events. [...]
asyncMap<E>(FutureOr<E> convert(List<int> event)) → Stream<E>
inherited
Creates a new stream with each data event of this stream asynchronously mapped to a new event. [...]
cast<R>() → Stream<R>
inherited
Adapt this stream to be a Stream<R>. [...]
contains(Object? needle) → Future<bool>
inherited
Returns whether needle occurs in the elements provided by this stream. [...]
detachSocket() → Future<Socket>
Detach the underlying socket from the HTTP client. When the socket is detached the HTTP client will no longer perform any operations on it. [...]
distinct([bool equals(List<int> previous, List<int> next)]) → Stream<List<int>>
inherited
Skips data events if they are equal to the previous data event. [...]
drain<E>([E? futureValue]) → Future<E>
inherited
Discards all data on this stream, but signals when it is done or an error occurred. [...]
elementAt(int index) → Future<List<int>>
inherited
Returns the value of the indexth data event of this stream. [...]
every(bool test(List<int> element)) → Future<bool>
inherited
Checks whether test accepts all elements provided by this stream. [...]
expand<S>(Iterable<S> convert(List<int> element)) → Stream<S>
inherited
Transforms each element of this stream into a sequence of elements. [...]
firstWhere(bool test(List<int> element), {List<int> orElse()}) → Future<List<int>>
inherited
Finds the first element of this stream matching test. [...]
fold<S>(S initialValue, S combine(S previous, List<int> element)) → Future<S>
inherited
Combines a sequence of values by repeatedly applying combine. [...]
forEach(void action(List<int> element)) → Future
inherited
Executes action on each element of this stream. [...]
handleError(Function onError, {bool test(dynamic error)}) → Stream<List<int>>
inherited
Creates a wrapper Stream that intercepts some errors from this stream. [...]
join([String separator = ""]) → Future<String>
inherited
Combines the string representation of elements into a single string. [...]
lastWhere(bool test(List<int> element), {List<int> orElse()}) → Future<List<int>>
inherited
Finds the last element in this stream matching test. [...]
listen(void onData(List<int> event), {Function? onError, void onDone(), bool? cancelOnError}) → StreamSubscription<List<int>>
inherited
Adds a subscription to this stream. [...]
map<S>(S convert(List<int> event)) → Stream<S>
inherited
Transforms each element of this stream into a new stream event. [...]
noSuchMethod(Invocation invocation) → dynamic
inherited
Invoked when a non-existent method or property is accessed. [...]
pipe(StreamConsumer<List<int>> streamConsumer) → Future
inherited
Pipes the events of this stream into streamConsumer. [...]
redirect([String? method, Uri? url, bool? followLoops]) → Future<HttpClientResponse>
Redirects this connection to a new URL. The default value for method is the method for the current request. The default value for url is the value of the HttpHeaders.locationHeader header of the current response. All body data must have been read from the current response before calling redirect. [...]
reduce(List<int> combine(List<int> previous, List<int> element)) → Future<List<int>>
inherited
Combines a sequence of values by repeatedly applying combine. [...]
singleWhere(bool test(List<int> element), {List<int> orElse()}) → Future<List<int>>
inherited
Finds the single element in this stream matching test. [...]
skip(int count) → Stream<List<int>>
inherited
Skips the first count data events from this stream. [...]
skipWhile(bool test(List<int> element)) → Stream<List<int>>
inherited
Skip data events from this stream while they are matched by test. [...]
take(int count) → Stream<List<int>>
inherited
Provides at most the first count data events of this stream. [...]
takeWhile(bool test(List<int> element)) → Stream<List<int>>
inherited
Forwards data events while test is successful. [...]
timeout(Duration timeLimit, {void onTimeout(EventSink<List<int>> sink)}) → Stream<List<int>>
inherited
Creates a new stream with the same events as this stream. [...]
toList() → Future<List<List<int>>>
inherited
Collects all elements of this stream in a List. [...]
toSet() → Future<Set<List<int>>>
inherited
Collects the data of this stream in a Set. [...]
toString() → String
inherited
A string representation of this object. [...]
transform<S>(StreamTransformer<List<int>, S> streamTransformer) → Stream<S>
inherited
Applies streamTransformer to this stream. [...]
where(bool test(List<int> event)) → Stream<List<int>>
inherited
Creates a new stream from this stream that discards some elements. [...]

Operators

operator ==(Object other) → bool
inherited
The equality operator. [...]

© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dart.dev/stable/2.13.0/dart-io/HttpClientResponse-class.html