如何在不使用httpcontext.current的情况下获取域URL

时间:2012-07-17 05:06:33

标签: c# asp.net

如何在不使用httpcontext.current的情况下获取域URL,因为我直接使用global.asax,无法访问当前上下文

2 个答案:

答案 0 :(得分:0)

global.asax确实可以访问当前上下文,但仅限于某些事件。例如,它确实具有Application_BeginRequest中的访问权限,但它不在Application_Start中。因此,首先,我会确保您尝试在正确的时间访问该网址。

除此之外,HttpApplication类(global_asax包含的内容)为您提供了类型为HttpRequest的Request属性。但同样,你只能在适当的时候访问它。

答案 1 :(得分:0)

好的,如果我遇到了你的问题,那么你可以使用这个javascript代码来获取网址。 请自行决定此代码的时间和地点

<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>

希望有所帮助