如何在C#中获取以前的URL?

问题描述 投票:2回答:3

如何在C#中获取Master Page中的上一个url?

我正在尝试找到重定向的页面。

提前致谢。

c# asp.net url url-rewriting
3个回答
3
投票

通常使用查询字符串参数来实现此目的:current?previousUrl=/some/11

这将允许您使用主页面代码隐藏中的Context.Request.QueryString["previousUrl"]从服务器端代码访问此值。


10
投票

您可以使用UrlReferrer属性获取上一个URL的信息。这适用于MVC和Web表单。

Request.UrlReferrer.AbsoluteUri

请注意,在第一页中,属性Request.UrlReferrer将为null。此外,如果发生重定向(例如,当用户登录到网页时),它将为null。

此属性基于HTTP_REFERER变量,因此您可以使用此变量。

Request.ServerVariables["HTTP_REFERER"]

由于HTTP_REFERER是客户端发送的变量,因此可能会被请求更改或删除。此外,当引用URL以https开头时,不设置变量。

This文章提到了为什么Request.UrlReferrer可能为空的几点。


0
投票
string urlName = Request.UrlReferrer.ToString();
© www.soinside.com 2019 - 2024. All rights reserved.