ASP.NET MVC Изменить разметку перед выводом - PullRequest
1 голос
/ 15 марта 2010

Прошу прощения за мои ограниченные знания здесь.

В прошлом я использовал метод Стива Сандерсона для кодирования HTML по умолчанию во время выполнения: http://blog.stevensanderson.com/2007/12/19/aspnet-mvc-prevent-xss-with-automatic-html-encoding/

Мне нужно изменить атрибуты img src и a href, прежде чем они будут выплеваны в браузере пользователя. Существует решение, использующее JavaScript, но оно не идеально по нескольким причинам. Перехват компилятора невозможен из-за ненужного использования Response.Write для тривиального HTML.

Могу ли я что-нибудь сделать с модулями HTTP или механизмом просмотра?

Есть мысли?

ОБНОВЛЕНИЕ: Мне не нужно HTML-кодировать атрибуты, но мне нужно их изменить.

Приветствие.

1 Ответ

3 голосов
/ 15 марта 2010

Использовать фильтр ответов .Работает с любым проектом ASP.NET, включая MVC.Должно работать, даже если вы используете другой механизм представления, поскольку он перехватывает на более низком уровне.

Вот фактический пример, который удаляет пробелы:

http://www.4guysfromrolla.com/articles/120308-1.aspx

Я использовал это раньше, чтобы переписать ссылки перед отправкой клиенту, но сейчас не могу найти код.

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