KookApiResult

Kook Api的响应值标准格式。

参考 https://developer.kaiheila.cn/doc/reference#%E5%B8%B8%E8%A7%84%20http%20%E6%8E%A5%E5%8F%A3%E8%A7%84%E8%8C%83.

响应值类型无外乎三种形式:列表、对象、空。

{
"code" : 0, // integer, 错误码,0代表成功,非0代表失败,具体的错误码参见错误码一览
"message" : "error info", // string, 错误消息,具体的返回消息会根据Accept-Language来返回。
"data" : [], // mixed, 具体的数据。
}

当返回数据为对象时,使用 KookApiRequest 的预期结果即为目标结果。

当返回数据为空时,使用 KookApiRequest 的预期结果考虑使用不变常量,例如 Unit.

当返回数据为列表时,使用 KookApiRequest 的预期结果考虑使用 KookApiResult.ListData.

Author

ForteScarlet

Types

Link copied to clipboard
class ListData<out T>(val items: List<T> = emptyList(), val meta: KookApiResult.ListMeta, val sort: Map<String, Int> = emptyMap()) : KookApiResult.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)

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

Properties

Link copied to clipboard

响应体中作为 code 的属性名, Int类型。

Link copied to clipboard

响应体中作为 data 的属性名。

Link copied to clipboard

响应体中作为 message 的属性名。

Link copied to clipboard
const val SUCCESS_CODE: Int = 0

代表成功的 '错误码'。