Package-level declarations

Types

Link copied to clipboard
Link copied to clipboard

超速限制 中的部分常量信息。

Link copied to clipboard
class ApiResponseException(val response: HttpResponse, message: String? = null, cause: Throwable? = null) : KookException

当API请求得到失败响应得到此异常。

Link copied to clipboard
class ApiResult @ApiResultType constructor(val code: Int, val message: String, val data: JsonElement = EMPTY_OBJECT)

对 KOOK API 标准响应数据的封装。

Link copied to clipboard
class ApiResultException(val result: ApiResult, message: String? = null, cause: Throwable? = null) : KookException

当API请求的状态码成功,但是 ApiResult 表现结果为失败时。

Link copied to clipboard
annotation class ApiResultType

标记为一个作为 KOOK API 请求而返回的类型, 应由 KOOK API 请求结果进行反序列化实现而不可直接构造。

Link copied to clipboard
abstract class BaseKookApi<T : Any> : KookApi<T>

KookApi 的进一步抽象实现,简化针对 KookApi.url 的构造过程。

Link copied to clipboard
data class Gateway @ApiResultType constructor(val url: String)

通过 GetGatewayApi 得到的网关信息。

Link copied to clipboard
Link copied to clipboard
interface KookApi<T : Any> : ApiDefinition<T>

一个用于表示 KOOK API 封装的抽象类。

Link copied to clipboard

Kook Api的响应值标准格式。

Link copied to clipboard
abstract class KookGetApi<T : Any> : BaseKookApi<T>

使用 GET 进行请求的 KookApi 基础抽象。

Link copied to clipboard
abstract class KookPostApi<T : Any> : BaseKookApi<T>

使用 POST 进行请求的 KookApi 基础抽象。

Link copied to clipboard
class ListData<out T>(val items: List<T> = emptyList(), val meta: ListMeta, val sort: Map<String, Int> = emptyMap()) : ListDataResponse<T, Map<String, Int>> , Iterable<T>

ListData 将 sort 类型直接视为 Map 进行解析。

Link copied to clipboard
abstract class ListDataResponse<out T, SORT>

当响应体中的 data 为列表类型时,其有特殊的数据格式:

Link copied to clipboard
data class ListMeta(val page: Int, val pageTotal: Int, val pageSize: Int, val total: Int)

当返回值为列表时的分页响应元数据。

Link copied to clipboard
data class RateLimit(val limit: Long, val remaining: Long, val reset: Long, val bucket: String?, val isGlobalLimit: Boolean)

速率限制 请求头中的数据体。

Inherited properties

Functions

Link copied to clipboard

直接构建一个 HttpClient. 需要环境中存在可用的引擎。

构建一个 HttpClient.

直接构建一个 HttpClient.

Inherited functions

Link copied to clipboard
suspend fun KookApi<*>.request(client: HttpClient, authorization: String): HttpResponse

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个 ApiResult

Link copied to clipboard

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个 ApiResult

Link copied to clipboard
fun KookApi<*>.requestBlocking(client: HttpClient, authorization: String): HttpResponse

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个 ApiResult

Link copied to clipboard
suspend fun <T : Any> KookApi<T>.requestData(client: HttpClient, authorization: String): T

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个具体结果。

Link copied to clipboard
fun <T : Any> KookApi<T>.requestDataAsync(client: HttpClient, authorization: String, scope: CoroutineScope? = null): CompletableFuture<T>

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个具体结果。

Link copied to clipboard
fun <T : Any> KookApi<T>.requestDataBlocking(client: HttpClient, authorization: String): T

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个具体结果。

Link copied to clipboard
fun <T : Any> KookApi<T>.requestDataReserve(client: HttpClient, authorization: String, scope: CoroutineScope? = null): SuspendReserve<T>

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个具体结果。

Link copied to clipboard

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个 ApiResult

Link copied to clipboard
suspend fun KookApi<*>.requestResult(client: HttpClient, authorization: String): ApiResult

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个 ApiResult 结果。

Link copied to clipboard

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个 ApiResult 结果。

Link copied to clipboard

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个 ApiResult 结果。

Link copied to clipboard

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个 ApiResult 结果。

Link copied to clipboard
suspend fun KookApi<*>.requestText(client: HttpClient, authorization: String): String

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个结果字符串。

Link copied to clipboard

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个结果字符串。

Link copied to clipboard
fun KookApi<*>.requestTextBlocking(client: HttpClient, authorization: String): String

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个结果字符串。

Link copied to clipboard

通过一个 HttpClient 和校验信息 authorization 对当前API发起请求,并得到一个结果字符串。