Подтвердить что ты не робот

Проверка запроса - ASP.NET MVC 2

Изменена ли проверка запроса для ASP.NET MVC 2, точнее, не проверяется?

Я сделал следующее:

Web.configs(в каталоге приложения и в каталоге представлений)

<pages
    validateRequest="false"

Атрибут контроллера/действия

[ValidateInput(false)]

В директиве @Page View

ValidateRequest="false"

Страница все еще проверяется, исключение генерируется при размещении содержимого HTML.

ОБНОВЛЕНИЕ

Создал новое приложение ASP.NET MVC 2, и я изменил индекс Home Controller на этот

    [ValidateInput(false)]
    public ActionResult Index(string InputText)
    {
        ViewData["Message"] = "Welcome to ASP.NET MVC!";

        return View();
    }

и моя страница просмотра

<% using(Html.BeginForm()){ %>
    <%= Html.TextBox("InputText") %>
    <input type="submit" />
<% } %>

И по-прежнему та же проблема, генерируется исключение.

4b9b3361

Ответ 1

В следующий раз я должен прочитать ошибку более внимательно:

Чтобы страницы могли переопределять параметры проверки запроса приложения, set requestValidationMode = "2.0" в разделе конфигурации. После установки этого значения вы можете отключить проверку запроса на установка validateRequest = "false"

Я помещаю это в приложение web.config

<system.web>
  <httpRuntime requestValidationMode="2.0" requestPathInvalidCharacters="" />
</system.web>

и он работал.

Update:

Я запускал ASP.NET 4, поэтому: P

Ответ 2

Вставьте обязательное предупреждение о XSS здесь.

То, что вы украсили контроллер (или действие) с помощью ValidateInputAttribute, должно быть достаточно, так как все проверки выполняются на этом уровне контроллера в ASP.NET MVC

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

У вас есть HandleErrorAttribute где угодно?