Использование Json.NET
JsonConvert.SerializeObject(new { Property = "<script>alert('o hai');</script>" })
возвращает
{"Property":"<script>alert('o hai');</script>"}
Возможно ли, чтобы значение было экранировано с помощью SerializeObject, чтобы предотвратить выполнение недружественного script? Я бы предпочел не вносить изменения в сам объект.
Изменить: в идеале я хотел бы интегрировать санитацию в вызов SerializeObject без необходимости обрабатывать объект до или после SerializeObject.
Изменить: строка, выводимая из JsonConvert.SerializeObject
, присваивается глобальной переменной в блоке script, который, по моему мнению, является причиной проблемы XSS.