将@SerializedName 与连字符一起使用不起作用
Using @SerializedName with hyphen not working
我正在尝试将此 JSON 响应反序列化为一个对象,而我的一个键上有一个连字符。不幸的是,Kotlin 不支持变量名中的连字符,这就是我使用 @SerializedName() 但它现在仍然有效的原因。
关于原因的任何线索?
JSON 回应
[
{
"dateCreated": "07-22-2021",
"comments": "Comment",
"vehicle_type": "Sedan",
"name": "Leagacy Nissan Template",
"template-type": "", //this is giving me the problem
"template_uses_type": "Both"
...
}
]
我的对象:
@Serializable
data class SpinDataResponse(
val dateCreated:String,
val comments: String,
val vehicle_type:String,
val name:String,
@SerializedName("template-type") val template_type:String,
val template_uses_type:String,
...
)
错误:
I/System.out: Error: Unexpected JSON token at offset 120: Encountered
an unknown key 'template-type'.
Use 'ignoreUnknownKeys = true' in 'Json {}' builder to ignore unknown keys.
JSON input: ....."name": "Nissan PathFinder", "template-type": "", "template_.....
我不想忽略未知密钥,因为我确实需要它。
我正在尝试将此 JSON 响应反序列化为一个对象,而我的一个键上有一个连字符。不幸的是,Kotlin 不支持变量名中的连字符,这就是我使用 @SerializedName() 但它现在仍然有效的原因。 关于原因的任何线索?
JSON 回应
[
{
"dateCreated": "07-22-2021",
"comments": "Comment",
"vehicle_type": "Sedan",
"name": "Leagacy Nissan Template",
"template-type": "", //this is giving me the problem
"template_uses_type": "Both"
...
}
]
我的对象:
@Serializable
data class SpinDataResponse(
val dateCreated:String,
val comments: String,
val vehicle_type:String,
val name:String,
@SerializedName("template-type") val template_type:String,
val template_uses_type:String,
...
)
错误:
I/System.out: Error: Unexpected JSON token at offset 120: Encountered an unknown key 'template-type'. Use 'ignoreUnknownKeys = true' in 'Json {}' builder to ignore unknown keys. JSON input: ....."name": "Nissan PathFinder", "template-type": "", "template_.....
我不想忽略未知密钥,因为我确实需要它。