Проверка ASP.NET - PullRequest
1 голос
/ 15 мая 2009

Я получаю ошибку проверки, когда пользователь вводит чужое имя. Пример:

System.Web.HttpRequestValidationException: потенциально опасное значение Request.Form обнаружено клиентом (ctl00 $ pageContent $ txtName = "Pedro ú logo").

, где ú переводится как & # 250; (без пробелов конечно)

Эти сторонние символы допустимы и не должны вызывать ошибку проверки. Я хочу, чтобы проверка ASP.NET проводилась с использованием UTF-16, а не UTF-8

Многие веб-сайты, блоги и форумы говорят, что нужно просто отключить валидацию (т.е. ValidateRequest = "false")

Есть ли способ обойти это БЕЗ выключения проверки? Отключение проверки не является приемлемым для этого приложения.

Спасибо, Джефф

Ответы [ 2 ]

1 голос
/ 15 мая 2009

На самом деле невозможно настроить механизм проверки запросов. Это отчасти запрограммировано. Я не вижу причины, по которой ты не хочешь отключить это. Если вы позаботитесь о санитарной обработке и HTML-кодировании всего, что вы получите от пользователя, и хотите отобразить на странице (что вы должны делать в любом случае, независимо от проверки запроса ASP.NET), вам это не понадобится.

0 голосов
/ 15 мая 2009

У меня была эта проблема.

Способ обойти эту проблему - очистить ввод с помощью javascript ПЕРЕД тем, как вы нажмете на пост.

См. Этот стекопоток ответ на похожий вопрос для некоторого JavaScript

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

...