Каков наилучший способ обойти ошибку «Потенциально опасный запрос» в asp.net? - PullRequest
3 голосов
/ 17 июня 2009

В проекте, над которым я сейчас работаю, есть возможность прикрепить встроенное видео YouTube к объявлению.

Это вызывает головную боль:

Мой первоначальный план состоял в том, чтобы взять HTML-код для вставки, который пользователь предоставляет с YouTube, и разделить videoID и хранить только это, отклоняя все, что не соответствует определенному шаблону, чтобы гарантировать, что нет хитрого бизнеса.

К сожалению, проверка ASP.net перехватывает html перед отправкой обратно мне для обработки, есть ли способ , кроме отключения проверки , чтобы обойти это?

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

Ответы [ 2 ]

2 голосов
/ 17 июня 2009

Отключение флага ValidateRequest - единственный способ разрешить .net принимать данные.

Одной из альтернатив может быть использование javascript для кодирования ввода и размещения на странице кодированных данных вместо необработанного HTML.

Еще одна альтернатива - иметь пустую страницу с вашим контролем и кнопку «Отправить» внутри фрейма на главной странице. Таким образом, вам нужно только отключить проверку для этой страницы и, следовательно, этого элемента управления. Стайлинг может быть проблемой здесь.

1 голос
/ 17 июня 2009

Если вас интересует только идентификатор видео с YouTube, можете ли вы не просто заставить пользователя ввести URL-адрес YouTube, а затем извлечь идентификатор видео из строки запроса? Тогда вам не придется беспокоиться о проблемах проверки страницы.

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