HttpResponse

abstract class HttpResponse : HttpMessage, CoroutineScope

An HttpClient's response, a second part of HttpClientCall.

Learn more from Receiving responses.

Inheritors

Constructors

Link copied to clipboard
constructor()

Properties

Link copied to clipboard
abstract val call: HttpClientCall

The associated HttpClientCall containing both the underlying HttpClientCall.request and HttpClientCall.response.

Link copied to clipboard
abstract val content: ByteReadChannel

Unmodified ByteReadChannel with the raw payload of the response.

Link copied to clipboard
Link copied to clipboard
abstract val headers: Headers
Link copied to clipboard
Link copied to clipboard

Gets HttpRequest associated with this response.

Link copied to clipboard
abstract val requestTime: GMTDate

GMTDate of the request start.

Link copied to clipboard
abstract val responseTime: GMTDate

GMTDate of the response start.

Link copied to clipboard
abstract val status: HttpStatusCode

The HttpStatusCode returned by the server. It includes both, the HttpStatusCode.description and the HttpStatusCode.value (code).

Link copied to clipboard

Functions

Link copied to clipboard
inline suspend fun <T> HttpResponse.body(): T

Tries to receive the payload of the response as a specific type T.

suspend fun <T> HttpResponse.body(typeInfo: TypeInfo): T

Tries to receive the payload of the response as a specific type T described in typeInfo.

Link copied to clipboard
Link copied to clipboard
suspend fun HttpResponse.bodyAsText(fallbackCharset: Charset = Charsets.UTF_8): String

Reads the HttpResponse.content as a String. You can pass an optional charset to specify a charset in the case no one is specified as part of the Content-Type response. If no charset specified either as parameter or as part of the response, io.ktor.client.plugins.HttpPlainText settings will be used.

Link copied to clipboard

Efficiently discards the remaining bytes of HttpResponse.content.

Link copied to clipboard

Reads the whole HttpResponse.content if Content-Length is specified. Otherwise, it just reads one byte.

suspend fun HttpResponse.readBytes(count: Int): ByteArray

Reads exactly count bytes of the HttpResponse.content.

Link copied to clipboard
open override fun toString(): String