KookApiRequest

abstract class KookApiRequest<T>

代表、包装了一个 Kook api的请求。

反序列化

KookApiRequest 面向 ktor, 并基于 kotlinx.serialization 进行反序列化。

Url内容

最终进行请求的 url 中部分参数(例如host)来自于 Kook.

不可变

此接口的实现类应当是不可变、可复用的。

Constructors

Link copied to clipboard

Types

Link copied to clipboard
object Companion

Functions

Link copied to clipboard
open suspend fun request(client: HttpClient, authorization: String, decoder: Json = DEFAULT_JSON, postChecker: suspend (HttpResponse) -> Unit = {}): ApiResult

通过 client 执行网络请求并尝试得到结果。

Link copied to clipboard
open fun requestBlocking(client: HttpClient, authorization: String, decoder: Json = DEFAULT_JSON, postChecker: Consumer<HttpResponse> = defaultRequestPostChecker): ApiResult

通过 client 执行网络请求并尝试得到结果。

Link copied to clipboard
open suspend fun requestData(client: HttpClient, authorization: String, decoder: Json = DEFAULT_JSON): T

通过 client 执行网络请求并尝试得到结果。

Link copied to clipboard
open fun requestDataBlocking(client: HttpClient, authorization: String, decoder: Json = DEFAULT_JSON): T

通过 client 执行网络请求并尝试得到结果。

Properties

Link copied to clipboard
abstract val method: HttpMethod

此请求的 method.

Link copied to clipboard
abstract val resultDeserializer: DeserializationStrategy<out T>

得到响应值的反序列化器.

Link copied to clipboard
abstract val url: Url

此请求最终对应的url。最终拼接的URL中部分参数(例如host)来自于 Kook.

Inheritors

Link copied to clipboard