Как очистить html / javascript из request.JSON в grails 3.1.10 restful service - PullRequest
0 голосов
/ 08 марта 2019

У нас есть служба Grails 3.1.10 restful, которая принимает данные json на http-пост. Эти данные могут содержать html / javascript, который не нужен.

Используя методы encodeAsHTML и подключаемого модуля xss-sanitizer XssSanitizerUtil.stripXSS, я могу видеть, как санировать отдельную строку, но как я могу выдвинуть это в более высокую область видимости через фильтры или что-то подобное, чтобы при использовании request.JSON в контроллере это уже было продезинфицировано?

Или уже есть другой способ сделать это проще?

1 Ответ

0 голосов
/ 11 марта 2019

Я создал перехватчик для применения к соответствующим контроллерам.В нем я сделал копию метода анализа JSON (запрос HttpServletRequest).В конце метода, где он анализирует inputStream, который я подключил к своему классу Sanitizer, который использует xss-sanitizer:

def body = IOUtils.toString(pushbackInputStream, encoding)
def sanitized = Sanitizer.sanitize(body)
json = JSON.parse(sanitized);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...