Почему request.rawurl не включает в себя часть http://localhost? - PullRequest
5 голосов
/ 26 января 2010

Когда я звоню Request.RawUrl, я не получаю доменное имя (по крайней мере, в разработке).

Например, если мой локальный URL-адрес:

http://localhost:2343/some/thing

Звонок в Request.RawUrl возвращает мне:

/ некоторые / вещь

Я помню, что он возвращает все, это поведение b / c, это локальное устройство?

Обновление

Я также использую Url Re-Writing, поэтому такие вещи, как Request.Url.AbsoluteUri, возвращают внутренний URL, а не переписанный URL, который мне нужно получить.

Является ли тогда JavaScript единственным способом?

Или я, может быть, смогу использовать Request.RawUrl для части url, а затем просто получить часть имени домена? (иногда он тоже имеет порт ...)

Ответы [ 5 ]

6 голосов
/ 26 января 2010

Согласно документации :

Необработанный URL-адрес определяется как часть URL-адреса, следующего за информацией о домене. В строке URL-адреса http://www.contoso.com/articles/recent.aspx, необработанный URL-адрес - /articles/recent.aspx. Необработанный URL-адрес включает строку запроса, если имеется.

Вы можете использовать Request.Url.AbsoluteUri, чтобы получить всю вещь.

1 голос
/ 26 января 2010

Такое поведение разработано. RawUrl возвращает только часть URL-адреса, следующую за именем домена, плюс все параметры строки запроса.

Если вам нужен полный URL, используйте Request.Url.

1 голос
/ 26 января 2010

Из документа MSDN на Request.RawUrl :

The raw URL is defined as the part of the URL following the domain information.

Вы ищете Request.Url .

1 голос
/ 26 января 2010

RawUrl возвращает именно это, URL после вашего домена.

См. Эту страницу для примера RawURL .

1 голос
/ 26 января 2010

Посмотрите, что вы получите с Request.Url.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...