Я создал две конечные точки отдыха в akka http, который принимает строку в качестве входных данных, анализирует ее с помощью Json4s и затем выполняет обработку на ней. Мой класс дела похож на -
final case class A(id: String, name: String, address: String)
1-ая конечная точка получает только идентификатор, в то время как другое получает все три поля, и я хочу использовать один и тот же класс случая A для обоих. Поэтому я использовал значения по умолчанию для полей имени и адреса, как -
final case class A(id: Stirng, name: String = "", address: String = "")
Это работает хорошо для меня. Но теперь, если я не отправляю поля адреса или имени (или обоих) во второй конечной точке, он не выдает исключение, указывающее, что имя (или адрес) не найдено.
Итак, мой вопрос: могу ли я создать одну конечную точку, в которой идентификатор является обязательным, в то время как другие поля не имеют значения, и другую конечную точку, где каждое поле является обязательным, используя тот же класс случая?
Код для разбора строки в классе case -
parse(jsonStr).extract[A]
Надеюсь, вы меня поняли.
Есть предложения?