IllegalStateException: Fail to prepare request body for sending when posting TraktSyncItems
Closed this issue · 1 comments
chrisbanes commented
Looks like we need to hook up the polymorphic serializers for posting.
Error:
java.lang.IllegalStateException: Fail to prepare request body for sending.
The body type is: class app.moviebase.trakt.model.TraktSyncItems (Kotlin reflection is not available), with Content-Type: null.
If you expect serialized body, please check that you have installed the corresponding plugin(like `ContentNegotiation`) and set `Content-Type` header.
at io.ktor.client.plugins.HttpSend$Plugin$install$1.invokeSuspend(HttpSend.kt:88)
at io.ktor.client.plugins.HttpSend$Plugin$install$1.invoke(Unknown Source:15)
at io.ktor.client.plugins.HttpSend$Plugin$install$1.invoke(Unknown Source:4)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:120)
at io.ktor.util.pipeline.SuspendFunctionGun.proceed(SuspendFunctionGun.kt:78)
at io.ktor.util.pipeline.SuspendFunctionGun.proceedWith(SuspendFunctionGun.kt:88)
at io.ktor.client.plugins.HttpCallValidator$Companion$install$1.invokeSuspend(HttpCallValidator.kt:130)
at io.ktor.client.plugins.HttpCallValidator$Companion$install$1.invoke(Unknown Source:13)
at io.ktor.client.plugins.HttpCallValidator$Companion$install$1.invoke(Unknown Source:4)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:120)
at io.ktor.util.pipeline.SuspendFunctionGun.proceed(SuspendFunctionGun.kt:78)
at io.ktor.client.plugins.HttpRequestLifecycle$Plugin$install$1.invokeSuspend(HttpRequestLifecycle.kt:38)
at io.ktor.client.plugins.HttpRequestLifecycle$Plugin$install$1.invoke(Unknown Source:11)
at io.ktor.client.plugins.HttpRequestLifecycle$Plugin$install$1.invoke(Unknown Source:4)
at io.ktor.util.pipeline.SuspendFunctionGun.loop(SuspendFunctionGun.kt:120)
at io.ktor.util.pipeline.SuspendFunctionGun.proceed(SuspendFunctionGun.kt:78)
at io.ktor.util.pipeline.SuspendFunctionGun.execute$ktor_utils(SuspendFunctionGun.kt:98)
at io.ktor.util.pipeline.Pipeline.execute(Pipeline.kt:77)
at io.ktor.client.HttpClient.execute$ktor_client_core(HttpClient.kt:191)
at io.ktor.client.statement.HttpStatement.executeUnsafe(HttpStatement.kt:108)
at io.ktor.client.statement.HttpStatement.execute(HttpStatement.kt:47)
at io.ktor.client.statement.HttpStatement.execute(HttpStatement.kt:62)
at app.moviebase.trakt.api.TraktSyncApi.removeWatchedHistory(TraktSyncApi.kt:94)
chrisbanes commented
Oh actually, I think this is just missing the content type telling Ktor how to encode the body.