改装/Spring将数据类解析为JSON对象
我有以下数据类:改装/Spring将数据类解析为JSON对象,json,spring,kotlin,gson,retrofit,Json,Spring,Kotlin,Gson,Retrofit,我有以下数据类: data class Thing( val id: Long?, val title: String, val description: String, ) 在我的Api中: @POST("doThings") fun createThings( @Query("thing") thing: Thing ): Call<StatusResponse> @POST(“doThings”) 有趣的东西( @查询
data class Thing(
val id: Long?,
val title: String,
val description: String,
)
在我的Api中:
@POST("doThings")
fun createThings(
@Query("thing") thing: Thing
): Call<StatusResponse>
@POST(“doThings”)
有趣的东西(
@查询(“事物”)事物:事物
):呼叫
我得到了一个错误:
状态:500,“错误”:“内部服务器错误”,“消息”:“意外字符('E'(代码69))
在spring api中,我做了一个日志输出,数据类对象到达时为:
Thing(id=null,title=Something,description=Something)
改装制造商有GSON转换器,但我猜它不能正常工作:
Retrofit.Builder()
.client(get())
.baseUrl(get<Context>().getString(R.string.base_url))
.addCallAdapterFactory(get<CoroutineCallAdapterFactory>())
.addConverterFactory(get<GsonConverterFactory>())
.build()
reformation.Builder()
.client(get())
.baseUrl(get().getString(R.string.base_url))
.addCallAdapterFactory(get())
.addConverterFactory(get())
.build()
有什么建议吗?谢谢您正在使用
@Query
注释,这意味着您的东西将被序列化为字符串
,并在URL中作为查询参数传递
相反,您希望使用@Body
注释,该注释将对象序列化为JSON,并将其添加到POST Body中
此答案将为您提供有关如何使用该注释的更多详细信息:您正在使用@Query
注释,这意味着您的东西将被序列化为字符串
,并在URL中作为查询参数传递
相反,您希望使用@Body
注释,该注释将对象序列化为JSON,并将其添加到POST Body中
此答案将为您提供有关如何使用该注释的更多详细信息:发送到API
的JSON
有效负载的外观如何?发送到API
的JSON
有效负载的外观如何?