我通过 Kotlin 多平台创建了一个共享库,我使用Kotlin Serialization
库进行序列化和反序列化,我在我的项目上实现Graph QL
,我使用以下结构
{
"operationName":"Operation",
"query":"query Operation($id: ID){rres: Cards(id: $id){id}}",
"variables":{"id": 1}
}
为了与API
进行通信,现在我有一个问题,我应该通过Kotlinx.Serialization
variables
将Json
作为Object
填写,但是当我varibales
填充为字符串时,我找不到办法,API
得到例外。
如何通过 Kotlinx.Serialization 创建嵌套的 Json?
为嵌套的 Json 对象创建一个类,并用 @Serializable 来注释它
@Serializable
class Data(
val operationName: String,
val query: String,
val variables: Variables
) {
@Serializable
class Variables(val id: Int)
}
你可能想看看这里。我认为这个线程完全解决了将对象存储为嵌套在另一个 JSON 中的 Json 字符串的问题。
https://github.com/Kotlin/kotlinx.serialization/issues/345#issuecomment-457545923