У меня есть страница ASP.Net, которая будет размещаться на нескольких разных серверах, и я хочу получить URL-адрес страницы (или даже лучше: сайт, на котором размещена страница), в виде строки для использования в кода позади. Любые идеи?
Получить URL-адрес страницы ASP.Net в кодировке
Ответ 1
Используйте это:
Request.Url.AbsoluteUri
Это даст вам полный путь (включая http://...)
Ответ 2
Если вы хотите, чтобы только часть схемы и полномочий запроса (протокол, хост и порт) использовали
Request.Url.GetLeftPart(UriPartial.Authority)
Ответ 3
Я использую
Request.Url.GetLeftPart(UriPartial.Authority) +
VirtualPathUtility.ToAbsolute("~/")
Ответ 4
Я использую это в своем коде в пользовательском классе. Пригодится для отправки электронных писем, таких как [email protected] "no-reply @" + BaseSiteUrl Прекрасно работает на любом сайте.
// get a sites base urll ex: example.com
public static string BaseSiteUrl
{
get
{
HttpContext context = HttpContext.Current;
string baseUrl = context.Request.Url.Authority + context.Request.ApplicationPath.TrimEnd('/');
return baseUrl;
}
}
Если вы хотите использовать его в коде, избавитесь от контекста.
Ответ 5
Вы хотите имя сервера? Или имя хоста?
Request.Url.Host ala Stephen
Dns.GetHostName - Имя сервера
Request.Url будет иметь доступ ко всему, что вам нужно знать о запрашиваемой странице.
Ответ 6
Request.Url.GetLeftPart(UriPartial.Authority) + Request.FilePath + "?theme=blue";
который даст вам полный путь к странице, на которой вы сидите. Я добавил в querystring.
Ответ 7
Request.Url.Host
Ответ 8
Я столкнулся с такой же проблемой и до сих пор нашел:
new Uri(Request.Url,Request.ApplicationPath)
или
Request.Url.GetLeftPart(UriPartial.Authority)+Request.ApplicationPath
Ответ 9
Если вы хотите включить в конец любую уникальную строку, аналогичную example.com?id=99999, используйте следующую
Dim rawUrl As String = Request.RawUrl.ToString()
Ответ 10
Используя js файл, вы можете записать следующее, которое также может использоваться в кодебе:
<script type="text/javascript">
alert('Server: ' + window.location.hostname);
alert('Full path: ' + window.location.href);
alert('Virtual path: ' + window.location.pathname);
alert('HTTP path: ' +
window.location.href.replace(window.location.pathname, ''));
</script>