Обнаружение дубликатов ключей с помощью Play Json

#scala #play-json

#scala #воспроизведение-json

Вопрос:

У меня есть приложение Scala, использующее библиотеку json Play Framework. Я знаю, что json обычно допускает дублирование ключей в объекте. Тем не менее, я хотел бы запретить дубликаты ключей в json, которые вводятся в качестве входных данных для моего приложения.

Как я могу определить, есть ли в документе json дубликаты ключей? Если у меня есть источник документа в виде строки, и я анализирую его с помощью Json.parse , это игнорирует дубликаты ключей (принимает только последнее значение для ключа), что означает, что я не могу сказать, что был дубликат ключа, изучив значение JsValue, которое он мне возвращает.

Я надеялся, что play.api.libs.json.JsonConfiguration предоставил бы способ изменить это поведение, но это не так.

Есть ли способ программно определить, имеет ли строка источника Json дубликаты ключей с помощью воспроизведения?

Комментарии:

1. Нет, вы не можете, JsObject это Map поле of, дубликатов нет

2. Спасибо. Я понимаю, что к тому времени, когда у меня есть JSObject, уже слишком поздно, но я все еще думал, что может быть какой-то способ сообщить программно до этого момента, когда у меня будет источник json

3. Такого промежуточного представления нет