Я уже давно столкнулся с этой проблемой и решил попытаться разобраться с ней раз и навсегда, разместив здесь вопрос для размышлений. У меня есть обработчик изображения на веб-сайте .net 4, расположенном здесь:
https://www.amadeupurl.co.uk/ImageHandler.ashx?i=3604 (фактический домен удален для конфиденциальности)
Теперь это прекрасно работает и без проблем отображает изображение с веб-сервера, я говорю без проблем, потому что, если я получаю доступ к URL-адресу, он отлично работает, загрузка изображения не генерируется. Однако вчера кто-то посетил этот точный URL, и исключение было поднято в следующих строках:
Exception Generated
Error Message:
A potentially dangerous Request.Path value was detected from the client (?).
Stack Trace:
at System.Web.HttpRequest.ValidateInputIfRequiredByConfig() at System.Web.HttpApplication.PipelineStepManager.ValidateHelper(HttpContext context)
Technical Information:
DATE/TIME: 23/01/2013 03:50:01
PAGE: www.amadeupurl.co.uk/ImageHandler.ashx?i=3604
Я понимаю сообщение об ошибке, это не проблема, я просто не понимаю, почему она создается здесь, чтобы усугубить ситуацию. Я не могу ее реплицировать, например, я сказал, что нажимаю ссылку на загрузку изображения, исключение, Я использую URL-маршрутизацию и зарегистрировал обработчик для игнорирования, если это вызвало проблему со следующим кодом:
routes.Ignore("{resource}.ashx")
Я не уверен, почему еще я получаю ошибку или что еще попробовать.