У меня есть приложение с HttpHandler, которое обрабатывает любые запросы на файл .js.Я только хочу, чтобы этот обработчик обрабатывал файлы * .js, которые запрашиваются в корне приложения.
Отображение обработчика выглядит следующим образом:
<add name="HandleJS" path="*.js" verb="*" type="MyApp.JsHandler" resourceType="Unspecified" requireAccess="Script" preCondition="integratedMode,runtimeVersionv4.0" />
В настоящее время этот обработчик обрабатывает ВСЕ запрошенные* .js файлы.Вот пример поведения, которое я хочу.
Этот запрос будет обработан обработчиком:
http://localhost/myapps/approot/script.js
, а этот не будет обработанот обработчика:
http://localhost/myapps/approot/dontProcessMe/script.js
Я бы очень хотел избежать включения полного абсолютного пути в путь обработчика, поэтому сначала я попробовал некоторые другие вещи.
Это непохоже, что свойство path
элемента add
позволяет использовать корневой механизм приложения ~/
, поэтому настройка path="~/*.js"
не работает.
Я также пытался реплицировать обработчик StaticFile, встроенный в IIS, и делал что-то вроде этого:
<add name="MyStaticFiles" path="*/*.js" verb="*" modules="StaticFileModule" />
или
<add name="MyStaticFiles" path="dontProcessMe/*.js" verb="*" modules="StaticFileModule" />
Оба из них просто возвращаютпустой ответ с HTTP-статусом 200.
Помоги мне, Оби Ван Кеноби, ты моя единственная надежда.