Отключить ValidateRequest для конкретной страницы - PullRequest
1 голос
/ 14 марта 2012

Друзья У меня проблемы, и мне нужна ваша помощь.

Для управления базами данных в разделе администратора моего сайта у меня есть несколько текстовых полей, в которые я хотел бы вводить данные вместе с тегами HTML. Как только я добавляю любой HTML-тег, такой как
, обновление SQLDATASOURCE выдает ошибку «Потенциально опасное значение Request.Form обнаружено клиентом»

Уже пробовал ValidateRequest = "false" но это не сработало Невозможно использовать AJAX Editor из-за проблем с пространством.

<httpRuntime requestValidationMode="2.0" />

Если я использую httpRuntime requestValidationMode , тогда он отключает проверку на всем сайте, делая его открытым для хакеров.

Друзья, как я могу отключить ValidateRequest только для определенных страниц в разделе администратора только

Ответы [ 3 ]

4 голосов
/ 14 марта 2012

В .Net Framework 4.0, если вы установите requestValidationMode = "2.0" в web.config, это не означает, что весь сайт будет отключен для проверки.Он просто вернулся в режим проверки 2.0, который проверяется только для страниц .aspx.Таким образом, вы можете применить атрибут validateRequest page driective к false для страниц, которые вы хотите отключить после установки режима 2.0.

MSDN : requestValidationMode = 2,0.Проверка запросов включена только для страниц, а не для всех HTTP-запросов.Кроме того, параметры проверки запроса элемента pages (если есть) в файле конфигурации или директивы @ Page на отдельной странице используются для определения того, какие страницы запрашиваются для проверки .

2 голосов
/ 14 марта 2012

Вы можете установить атрибут методов вашего контроллера или контроллера, чтобы отключить validationRequest

[ConfigurationPropertyAttribute("validateRequest", DefaultValue= false)]
0 голосов
/ 14 марта 2012

Вам не хватает директивы ValidateRequest="false" в вашей странице

...