Java JSONPARSER, проверка JSON (до или после анализа) - PullRequest
0 голосов
/ 08 июня 2011

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

JsonParser parser = new JsonParser();
JsonObject bodyvar = parser.parse(params.get("body")).getAsJsonObject();

Как я могу проверить валидацию JSON? (в идеале я могу получить логическое значение или 1 или 0, поэтому я могу создать этот метод условно. Или, если есть JickParser для проверки / отловки, который также был бы крут)

edit: использование библиотеки GSON (и я буду смотреть ссылку на GSON, пока жду ответов здесь)

1 Ответ

3 голосов
/ 08 июня 2011

Не зная, какую библиотеку вы используете, сложно быть конкретным, но большинство библиотек синтаксического анализа выдает исключение, если JSON был сформирован неправильно, поэтому вам не нужно беспокоиться о том, что JSON может что-то сломатьостальное.Если вы просто добавите блок try / catch вокруг вызова на parser.parse(), вы, вероятно, будете в хорошей форме.

И JSON не может причинить вреда на стороне сервера, поэтому, если вы не планируете передавать эту строку JSON из браузера одного пользователя в другой, у вас все равно не будет никаких уязвимостей безопасности.

Редактировать

Поскольку вы используете gson, JsonSyntaxException будет выброшено, если JSON сформирован неправильно.Вы можете поймать это исключение специально, если в этом случае вы хотите сделать что-то другое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...