Package-level declarations

Functions

Link copied to clipboard
inline suspend fun <R> Response.bodyAs(strategy: DeserializationStrategy<R>): R

inline suspend fun <R> Response.bodyAs(requireOk: Boolean = true, strategy: DeserializationStrategy<R> = serializer()): R

Convert the receiving Response into an object of type R (where that class should be marked @Serializable).

Link copied to clipboard
inline suspend fun <R> HttpFetcher.delete(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R

Call DELETE on a target resource with R as the expected return type.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.get(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R

Call GET on a target resource with R as the expected return type.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.options(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R

Call DELETE on a target resource with R as the expected return type.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.patch(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R

A serialize-friendly version of patch that has no body but provides a serialized response.

inline suspend fun <B> HttpFetcher.patch(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): Response

A version of patch that accepts a serializable body.

inline suspend fun <B, R> HttpFetcher.patch(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer(), responseDeserializer: DeserializationStrategy<R> = serializer()): R

Call PATCH on a target resource with R as the expected return type.

Link copied to clipboard
inline suspend fun <B> HttpFetcher.patchBytes(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): ByteArray

A serialize-friendly version of patch that accepts a serializable body and returns its response as a raw byte array.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.post(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R

A serialize-friendly version of post that has no body but provides a serialized response.

inline suspend fun <B> HttpFetcher.post(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): Response

A version of post that accepts a serializable body.

inline suspend fun <B, R> HttpFetcher.post(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer(), responseDeserializer: DeserializationStrategy<R> = serializer()): R

Call POST on a target resource with R as the expected return type.

Link copied to clipboard
inline suspend fun <B> HttpFetcher.postBytes(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): ByteArray

A serialize-friendly version of post that accepts a serializable body and returns its response as a raw byte array.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.put(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R

A serialize-friendly version of put that has no body but provides a serialized response.

inline suspend fun <B> HttpFetcher.put(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): Response

A version of put that accepts a serializable body.

inline suspend fun <B, R> HttpFetcher.put(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer(), responseDeserializer: DeserializationStrategy<R> = serializer()): R

Call PUT on a target resource with R as the expected return type.

Link copied to clipboard
inline suspend fun <B> HttpFetcher.putBytes(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): ByteArray

A serialize-friendly version of put that accepts a serializable body and returns its response as a raw byte array.

Link copied to clipboard
fun <B> B.toRequestBody(strategy: SerializationStrategy<B>): RequestBody
Link copied to clipboard
inline suspend fun <R> HttpFetcher.tryDelete(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R?

A serialize-friendly version of tryDelete.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.tryGet(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R?

Like get, but returns null if the request fails or the response can't be deserialized.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.tryOptions(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R?

A serialize-friendly version of tryDelete.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.tryPatch(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R?

A serialize-friendly version of tryPatch that has no body but provides a serialized response.

inline suspend fun <B> HttpFetcher.tryPatch(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): Response?

Like patch but returns null instead of throwing if the request fails.

inline suspend fun <B, T> HttpFetcher.tryPatch(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer(), noinline transform: suspend Response.() -> T): T?

A serialize-friendly version of tryPatch that accepts a serializable body and logic to convert the response to some desired target object of type T.

inline suspend fun <B, R> HttpFetcher.tryPatch(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer(), responseDeserializer: DeserializationStrategy<R> = serializer()): R?

Like patch, but returns null if the request fails or the response can't be deserialized.

Link copied to clipboard
inline suspend fun <B> HttpFetcher.tryPatchBytes(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): ByteArray?

A serialize-friendly version of patch that accepts a serializable body but returns raw bytes instead of a serialized response.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.tryPost(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R?

A serialize-friendly version of tryPost that has no body but provides a serialized response.

inline suspend fun <B> HttpFetcher.tryPost(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): Response?

Like post but returns null instead of throwing if the request fails.

inline suspend fun <B, T> HttpFetcher.tryPost(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer(), noinline transform: suspend Response.() -> T): T?

A serialize-friendly version of tryPost that accepts a serializable body and logic to convert the response to some desired target object of type T.

inline suspend fun <B, R> HttpFetcher.tryPost(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer(), responseDeserializer: DeserializationStrategy<R> = serializer()): R?

Like post, but returns null if the request fails or the response can't be deserialized.

Link copied to clipboard
inline suspend fun <B> HttpFetcher.tryPostBytes(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): ByteArray?

A version of tryPost that returns its response as a raw byte array.

Link copied to clipboard
inline suspend fun <R> HttpFetcher.tryPut(resource: String, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, responseDeserializer: DeserializationStrategy<R> = serializer()): R?

A serialize-friendly version of tryPut that has no body but provides a serialized response.

inline suspend fun <B> HttpFetcher.tryPut(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): Response?

Like put but returns null instead of throwing if the request fails.

inline suspend fun <B, T> HttpFetcher.tryPut(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer(), noinline transform: suspend Response.() -> T): T?

A serialize-friendly version of tryPut that accepts a serializable body and logic to convert the response to some desired target object of type T.

inline suspend fun <B, R> HttpFetcher.tryPut(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer(), responseDeserializer: DeserializationStrategy<R> = serializer()): R?

Like put, but returns null if the request fails or the response can't be deserialized.

Link copied to clipboard
inline suspend fun <B> HttpFetcher.tryPutBytes(resource: String, body: B, headers: Map<String, Any>? = FetchDefaults.Headers, redirect: RequestRedirect? = FetchDefaults.Redirect, abortController: AbortController? = null, bodySerializer: SerializationStrategy<B> = serializer()): ByteArray?

A serialize-friendly version of put that accepts a serializable body but returns raw bytes instead of a serialized response.