- java.lang.Object
-
- jdk.incubator.http.HttpResponse<T>
-
- 参数类型
-
T- 响应体类型
public abstract class HttpResponse<T> extends Object
代表对HttpRequest的回复 。
Incubating Feature.将在以后的版本中删除。当接收到响应状态代码和标题时,通常在响应正文已被接收之后,A
HttpResponse可用。 这取决于发送请求时提供的响应体处理程序。 在所有情况下,在身体被读取之前调用响应体处理程序。 这使应用程序有机会决定如何处理身体。此类中提供了访问响应头和响应主体的方法。
响应处理程序和处理器
响应机构在两个层面处理。 应用程序代码提供响应处理程序(
HttpResponse.BodyHandler),它可以检查响应状态代码和头文件,然后返回一个HttpResponse.BodyProcessor以实际读取(或丢弃)正文并将其转换为一些有用的Java对象类型。 处理程序可以返回预定义的处理器类型之一或定制处理器,或者如果正文被丢弃,则可以调用BodyProcessor.discard()并返回丢弃响应正文的处理器。 处理器和处理器的静态实现分别在BodyHandler和BodyProcessor中提供。 在所有情况下,提供的处理程序功能都是方便的实现,它忽略了提供的状态代码和头文件,并返回相关的预定义的BodyProcessor。参见
HttpResponse.BodyHandler例如用法。- 从以下版本开始:
- 9
-
-
Nested Class Summary
Nested Classes Modifier and Type Class 描述 static interfaceHttpResponse.BodyHandler<T>响应机构的处理程序。static interfaceHttpResponse.BodyProcessor<T>响应机构的处理器。static interfaceHttpResponse.MultiProcessor<U,T>用于HTTP / 2多响应的响应处理器。
-
构造方法摘要
构造方法 Modifier Constructor 描述 protectedHttpResponse()创建一个HttpResponse。
-
方法摘要
所有方法 接口方法 抽象方法 Modifier and Type 方法 描述 abstract Tbody()返回身体。abstract HttpRequestfinalRequest()返回在线上发送的最后HttpRequest进行交换(可能或可能不等于初始请求)。abstract HttpHeadersheaders()返回接收到的响应头。abstract HttpRequestrequest()返回发起交易的最初的HttpRequest。abstract SSLParameterssslParameters()返回此响应有效的SSLParameters。abstract intstatusCode()返回此响应的状态代码。abstract CompletableFuture<HttpHeaders>trailers()返回接收到的响应预告片(如果有),当它们可用时。abstract URIuri()返回收到的响应的URI。abstract HttpClient.Versionversion()返回用于此响应的HTTP协议版本。
-
-
-
方法详细信息
-
statusCode
public abstract int statusCode()
返回此响应的状态代码。- 结果
- 响应代码
-
request
public abstract HttpRequest request()
返回发起交易的初始HttpRequest。- 结果
- 请求
-
finalRequest
public abstract HttpRequest finalRequest()
返回在电汇上发送的最后的HttpRequest(可能或可能不等于初始请求)。- 结果
- 请求
-
headers
public abstract HttpHeaders headers()
返回接收到的响应头。- 结果
- 响应头
-
trailers
public abstract CompletableFuture<HttpHeaders> trailers()
返回接收到的响应预告片(如果有),当它们可用时。 对于许多响应处理器类型,这将是HttpResponse本身可用的同时。 在这种情况下,返回的CompletableFuture将已经完成。- 结果
- 响应预告片的CompletableFuture(可能为空)
-
body
public abstract T body()
返回身体。 根据T的类型,返回的身体可能会在阅读后代表身体(例如byte[]或String或Path),或者它可能表示身体被阅读的对象,如InputStream。- 结果
- 身体
-
sslParameters
public abstract SSLParameters sslParameters()
返回此响应有效的SSLParameters。 如果这不是HTTPS响应,则返回null。- 结果
- 与响应关联的SSLParameters
-
uri
public abstract URI uri()
返回收到的响应的URI。 如果重定向发生,这可能与请求URI不同。- 结果
- 响应的URI
-
version
public abstract HttpClient.Version version()
返回用于此响应的HTTP协议版本。- 结果
- HTTP协议版本
-
-