okhttp / okhttp3 / Response

Response

class Response :Closeable

An HTTP response. Instances of this class are not immutable: the response body is a one-shot value that may be consumed only once and then closed. All other properties are immutable.

This class implements Closeable. Closing it simply closes its response body. See ResponseBody for an explanation and examples.

Types

Name Summary
Builder class Builder

Properties

Name Summary
body Returns a non-null value if this response was passed to Callback.onResponse or returned from Call.execute. Response bodies must be closed and may be consumed only once.val body:ResponseBody?
cacheControl Returns the cache control directives for this response. This is never null, even if this response contains no Cache-Control header.val cacheControl:CacheControl
cacheResponse Returns the raw response received from the cache. Will be null if this response didn’t use the cache. For conditional get requests the cache response and network response may both be non-null. The body of the returned response should not be read.val cacheResponse:Response?
code Returns the HTTP status code.val code:Int
handshake Returns the TLS handshake of the connection that carried this response, or null if the response was received without TLS.val handshake:Handshake?
headers Returns the HTTP headers.val headers:Headers
isRedirect Returns true if this response redirects to another resource.val isRedirect:Boolean
isSuccessful Returns true if the code is in [200..300), which means the request was successfully received, understood, and accepted.val isSuccessful:Boolean
message Returns the HTTP status message.val message:String
networkResponse Returns the raw response received from the network. Will be null if this response didn’t use the network, such as when the response is fully cached. The body of the returned response should not be read.val networkResponse:Response?
priorResponse Returns the response for the HTTP redirect or authorization challenge that triggered this response, or null if this response wasn’t triggered by an automatic retry. The body of the returned response should not be read because it has already been consumed by the redirecting client.val priorResponse:Response?
protocol Returns the HTTP protocol, such as Protocol.HTTP_1_1 or Protocol.HTTP_1_0.val protocol:Protocol
receivedResponseAtMillis Returns a timestamp taken immediately after OkHttp received this response’s headers from the network. If this response is being served from the cache then this is the timestamp of the original response.val receivedResponseAtMillis:Long
request The wire-level request that initiated this HTTP response. This is not necessarily the same request issued by the application:val request:Request
sentRequestAtMillis Returns a timestamp taken immediately before OkHttp transmitted the initiating request over the network. If this response is being served from the cache then this is the timestamp of the original request.val sentRequestAtMillis:Long

Functions

Name Summary
challenges Returns the RFC 7235 authorization challenges appropriate for this response’s code. If the response code is 401 unauthorized, this returns the “WWW-Authenticate” challenges. If the response code is 407 proxy unauthorized, this returns the “Proxy-Authenticate” challenges. Otherwise this returns an empty list of challenges.fun challenges():List<Challenge>
close Closes the response body. Equivalent to body().close().fun close():Unit
header fun header(name:String, defaultValue:String? = null):String?
headers fun headers(name:String):List<String>
newBuilder fun newBuilder(): Builder
peekBody Peeks up to byteCount bytes from the response body and returns them as a new response body. If fewer than byteCount bytes are in the response body, the full response body is returned. If more than byteCount bytes are in the response body, the returned value will be truncated to byteCount bytes.fun peekBody(byteCount:Long):ResponseBody
toString fun toString():String
trailers Returns the trailers after the HTTP response, which may be empty. It is an error to call this before the entire HTTP response body has been consumed.fun trailers():Headers