HttpClientResponse抽象 接口

客户端连接的 HTTP 响应。

HttpClientResponse 对象的主体是一个来自服务器的数据 Stream。使用 Stream 方法,如 Stream.transformStream.join 来访问数据。

var client = HttpClient();
try {
  HttpClientRequest request = await client.get('localhost', 80, '/file.txt');
  HttpClientResponse response = await request.close();
  final stringData = await response.transform(utf8.decoder).join();
  print(stringData);
} finally {
  client.close();
}
实现类型

构造函数

HttpClientResponse()

属性

certificate X509Certificate?
返回提供响应的 HTTPS 服务器证书。如果不是安全的 TLS 或 SSL 连接,则返回 null。
没有设置器
compressionState HttpClientResponseCompressionState
响应的压缩状态。
没有设置器
connectionInfo HttpConnectionInfo?
获取客户端连接信息。如果套接字不可用,则返回 null
没有设置器
contentLength int
返回响应体的内容长度。如果事先不知道响应体的大小,则返回 -1。
没有设置器
cookies List<Cookie>
服务器设置的 Cookie(来自 'set-cookie' 头)。
没有设置器
first Future<List<int>>
此 Stream 的第一个元素。
没有设置器继承
hashCode int
此对象的哈希码。
没有设置器继承
headers HttpHeaders
返回客户端响应头。
没有设置器
isBroadcast bool
是否此 Stream 是广播流。
没有设置器继承
isEmpty Future<bool>
是否此 Stream 包含任何元素。
没有设置器继承
isRedirect bool
返回状态码是否是常规重定向代码之一 HttpStatus.movedPermanentlyHttpStatus.foundHttpStatus.movedTemporarilyHttpStatus.seeOtherHttpStatus.temporaryRedirect
没有设置器
last Future<List<int>>
此 Stream 的最后一个元素。
没有设置器继承
length Future<int>
此流中元素的数量。
没有设置器继承
persistentConnection bool
获取服务器返回的持久连接状态。
没有设置器
reasonPhrase String
返回与状态码关联的说明短语。
没有设置器
redirects List<RedirectInfo>
返回此连接经历的一系列重定向。如果没有重定向,则列表将为空。在自动和手动重定向的情况下redirects 都会更新。
没有设置器
runtimeType Type
对象的运行时类型表示。
没有设置器继承
single Future<List<int>>
此流的单个元素。
没有设置器继承
statusCode int
返回状态码。
没有设置器

方法

any(bool test(List<int> element)) Future<bool>
检查 test 是否接受此流提供的任何元素。
继承
asBroadcastStream({void onListen(StreamSubscription<List<int>><List<int>> subscription)?, void onCancel(StreamSubscription<List<int>> subscription)?}) Stream<List<int>>
返回一个多订阅流,它产生与该流相同的事件。
继承
asyncExpand<E>(Stream<E>? convert(List<int> event)) Stream<E>
将每个元素转换为异步事件的序列。
继承
asyncMap<E>(FutureOr<E> convert(List<int> event)) Stream<E>
创建一个新流,其中每个数据事件都异步映射为一个新的事件。
继承
cast<R>() Stream<R>
将该流适配为 Stream<R>
继承
contains(Object? needle) Future<bool>
返回 needle 是否出现在该流提供的元素中。
继承
detachSocket() Future<Socket>
从 HTTP 客户端断开底层套接字。套接字断开时,HTTP 客户端将不再对此套接字执行任何操作。
distinct<E>([bool equals(List<int> previous, List<int> next)?]) Stream<List<int>>
如果数据事件与上一个数据事件相等,将跳过数据事件。
继承
drain<E>([E? futureValue]) Future<E>
丢弃此流上的所有数据,但会信号完成或发生错误。
继承
elementAt(int index) Future<List<int>>
返回此流中第 index 个数据事件的值。
继承
every(bool test(List<int> element)) Future<bool>
检查是否此流提供的所有元素都被 test 接受。
继承
expand<S>(Iterable<S> convert(List<int> element)) Stream<S>
将流中的每个元素转换为元素序列。
继承
firstWhere(bool test(List<int> element), {List<int> orElse()?}) Future<List<int>>
查找匹配 test 的此流中的第一个元素。
继承
fold<S>(S initialValue, S combine(S previous, List<int>)) Future<S>
通过反复应用 combine 结合值序列。
继承
forEach(void action(List<int> element)) Future<void>
对此流中的每个元素执行 action
继承
handleError(Function onError, {bool test(dynamic error)?}) Stream<List<int>>
创建一个包装流,以拦截来自此流的某些错误。
继承
join([String separator = ""]) Future<String>
将元素的字面表示组合成一个单一字符串。
继承
lastWhere(bool test(List<int> element), {List<int> orElse()?}) Future<List<int>>
寻找最后一个匹配 test 的元素。
继承
listen(void onData(List<int> event)?, {Function? onError, void onDone()?, bool? cancelOnError}) StreamSubscription<List<int>>
为此流添加一个订阅。
继承
map<S>(S convert(List<int> event)) Stream<S>
将此流中的每个元素转换为新的流事件。
继承
noSuchMethod(Invocation invocation) → dynamic
当访问不存在的方法或属性时,将被调用。
继承
pipe(StreamConsumer<List<int>> streamConsumer) Future
将此流的事件管道输入到 streamConsumer.
继承
redirect([String? method, Uri? url, bool? followLoops]) Future<HttpClientResponse>
将此连接重定向到新 URL。默认的 method 值为当前请求的方式。默认的 url 值为当前响应的 HttpHeaders.locationHeader 头的值。必须在调用 redirect 方法之前从当前响应中读取所有体数据。
reduce(List<int> combine(List<int> previous, List<int> element)) Future<List<int>>
通过反复应用 combine 结合值序列。
继承
singleWhere(bool test(List<int> element), {List<int> orElse()?}) Future<List<int>>
查找符合 test 的此流中的单个元素。
继承
skip(int count) Stream<List<int>>
跳过来自此流的第一个 count 个数据事件。
继承
skipWhile(bool test(List element)) Stream<List>
在事件匹配 test 条件之前,跳过此流中的数据事件。
继承
take(int count) Stream<List>
提供此流的最多前 count 个数据事件。
继承
takeWhile(bool test(List element)) Stream<List>
test 成功时,继续前向传输数据事件。
继承
timeout(Duration timeLimit, {void onTimeout(EventSink sink)?}) Stream<List>
创建一个拥有与此流相同事件的新的流。
继承
toList() Future<List>
将此流的全部元素收集到 List 中。
继承
toSet() Future<Set>
将此流中的数据收集到 Set 中。
继承
toString() String
此对象的字符串表示形式。
继承
transform<S>(StreamTransformer<List<int>, S> streamTransformer) Stream<S>
streamTransformer 应用到此流。
继承
where(bool test(List<int> event)) Stream<List<int>>
从当前流创建一个新流,丢弃一些元素。
继承

运算符

operator ==(Object other) bool
等于运算符。
继承