Описание
Я использую библиотеку сериализации Kotlinx в многоплатформенной библиотеке для iOS и Android для обработки HTTP-запросов.Но у меня есть это сообщение, когда я использую функцию запроса на iOS, есть ли обходной путь?Какая строка в моей функции вызывает невыполненную функцию?
kotlin.NotImplementedError: Операция не реализована: получение сериализатора из KClass недоступно в native из-за отсутствия отражения.Используйте .serializer () непосредственно для сериализуемого класса.
Для воспроизведения
Это функция, которую я написал
@ImplicitReflectionSerializer
private suspend fun authenticationRequest(email: String, password: String): Either<ErrorMessage, Authentication> {
return try {
val response: Authentication = client.post {
url("${Constants.API_URL}/security/login")
body = jsonSerializer.write(LoginType(email, password))
}
Either.Right(response)
} catch (e: ResponseException) {
val message = Json.parse<ErrorMessage>(e.response.content.readUTF8Line() ?: "").apply {
codeHttp = e.response.status.value
reason = e.response.status.description
}
Either.Left(message)
}
}
Среда