2014-03-27 2 views
1

В настоящее время я пытаюсь получить текущий URL-адрес, отображаемый в браузере.Получение текущего URL-адреса, отображаемого в браузере

Если я использую

Request.Path 

я https://this.website.com:443/Default.aspx который является технически правильным.

Однако URL-адрес, отображаемый в самом браузере, равен https://this.website.com/.

Использование любого из параметров запроса по-прежнему будет показывать Default.aspx.

Мне нужно в конечном счете обнаружить, что URL-адрес в браузере равен https://this.website.com или http://this.website.com/Default.aspx, а затем перенаправить на Default.aspx, если его там нет.

Btw, усложняющее больше, является перенаправлением https в моем web.config.

+0

Дубликат [Как получить URL текущей страницы в C#] (http://stackoverflow.com/questions/593709/how-to-get-the-url-of-the-current- page-in-c-sharp) –

+1

Это не дублирующий вопрос. Я пытаюсь понять, как отличить разницу между http://www.site.com/ и http://www.site.com/Default.aspx. Который, по-видимому, asp.net определяет одинаковый. – Prescient

ответ

2

Вы можете получить его из запроса в httpcontext.

HttpContext.Current.Request.Url 

Обновлено:

Если вы хотите сказать, кастрированный баран текущий URL является/или /default.aspx. Вы можете использовать свойство RawUrl запроса. Это поле будет содержать весь URL.

HttpContext.Current.Request.RawUrl 
+0

Нет, он вызывает https://this.website.com/default.aspx, когда URL-адрес в окне браузера https://this.website.com/ – Prescient

+0

Вам нужно использовать 'HttpContext.Current.Request. Url.Host' –

+0

@ DanielB Nope. это только дает мне HOST. Мне нужно выяснить, является ли url this.site.com/ или this.site.com/Default.aspx. – Prescient

Смежные вопросы