Когда я создаю клиента с функцией JacksonSerializer()
и выполняю некоторые вызовы API, а затем запускаю этот скрипт на моем локальном компьютере, я не получаю ошибок, и скрипт успешно выполняется.Однако, когда я загружаю этот скрипт как AWS Lambda, я получаю следующую ошибку:
com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of kotlin.coroutines.Continuation, problem: abstract types either need to be mapped to concrete types, have custom deserializer, or be instantiated with additional type information
Сначала я думал, что ошибка возникла из-за того, что я создал клиент вне класса Handler
, но когдаЯ сделал клиент частным значением внутри класса Handler
, но я все еще получаю сообщение об ошибке.Я включил println()
операторов в свою функцию, но они даже не запускаются.Это говорит мне, что мой handleRequest()
функционал не запускается.Есть ли какой-то AWS / Lambda'ism, который мешает мне использовать функцию JacksonSerializer()
как?Если да, есть ли какие-либо альтернативы для анализа ответов JSON с клиентом Ktor?
Конструкция моего клиента:
private val client = HttpClient(Apache) {
install(JsonFeature) {
serializer = JacksonSerializer()
}
}
Пример вызова с использованием клиента:
val response = client.post<JsonNode> {
url(URL(GITHUB_GRAPHQL_ENDPOINT))
body = reqBody
headers {
append("Authorization", "bearer $token")
}
}