Ну, потому что вы работаете с парсингом json - что подразумевает, что наряду с тем, что вам нужно проверять его и правильно обрабатывать ошибки, это не так просто просто конвертировать - игра JSON заставит вас обрабатывать ошибки , Таким образом, отвечая на ваш вопрос, вы можете попробовать что-то вроде описанного ниже:
val jsonString = "{\"id\": [1, 2, 3] }"
val payload = Json.parse(jsonString)
// This will return `JsResult` - success or failure, which need to be properly handled
println((payload \ "id").validate[Array[Int]].map(_.toList))
// This is unsafe operation and might throw exception for un-expected JSON
println((payload \ "id").validate[Array[Int]].get.toList)
, который распечатывается для меня следующим образом:
JsSuccess(List(1, 2, 3),)
List(1, 2, 3)
Я добавил toList
только для удобства чтения. Надеюсь, это поможет вам!