Можно ли пропустить HttpHandler, если нет строки запроса? - PullRequest
3 голосов
/ 01 августа 2009

Я написал динамическое изменение размера изображения как HttpHandler. Он автоматически вызывается для всего с расширением изображения, например:

http://www.mysite.com/picture.jpg?width=200&height=100

запустит обработчик и вернет миниатюрное изображение с правильными заголовками ответа. Однако я хочу, чтобы обработчик пропустил запрос, если он вызывается без строки запроса:

http://www.mysite.com/picture.jpg

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

Ответы [ 2 ]

4 голосов
/ 01 августа 2009

Обработчик должен «обработать» запрос. Это конец цепи. Вам либо нужно сделать его модулем HttpModule, либо вам нужно обслуживать изображение самостоятельно, независимо от того, измените ли вы его размер или нет.

1 голос
/ 01 августа 2009

Не могли бы вы просто настроить свой обработчик для учета этого случая? Вы можете просто убедиться в отсутствии параметров строки запроса и просто сопоставить путь запроса с диском и вернуть изображение напрямую, открыв его и просто записав в выходной поток.

...