Я работаю над веб-приложением, которое использует третью сторону HttpModule, который выполняет перезапись URL.
Я хочу знать, существует ли какой-либо способ определить исходный URL позже в Application_BeginRequest
событие. Например...
Исходный URL:
http://domain.com/products/cool-hat.aspx
Переписанный URL (от третьей стороны httpmodule):
http://domain.com/products.aspx?productId=123
В прошлом я записал HttpModules, которые хранят исходный URL в HttpContext. Объекты, но, это - приложение сторонних производителей, и у меня нет способа сделать это.
Любые идеи ценились бы.
Создайте новый HttpModule, который будет служить оболочкой (наследует) сторонний модуль, и делайте с ним все, что захотите.
В вашем случае переопределите соответствующую функцию (ProcessRequest?) И сохраните исходный URL-адрес в HttpContext.Items, а затем вызовите реализацию MyBase
. Должно работать нормально.