我应该如何在ASP.NET MVC操作中获取引荐网址?我正在尝试重定向回调用操作之前的页面。
如果不想直接访问Request.ServerVariables
字典,您可以使用Request.UrlReferrer
获取引用URL。
Request.UrlReferrer
实际上是 URI,但你可以从中获取有关引荐网址的所有信息。 (有关 URI vs URL 的更多信息:https://dev59.com/a3VC5IYBdhLWcg3w0EoD)。 - MiguelRequest.ServerVariables["http_referer"]
应该这样做。
filterContext.RequestContext.HttpContext.Request.UrlReferrer.AbsolutePath
public interface IReferrer
{
String Referrer { get; set; }
}
...
public static MvcHtmlString HiddenForReferrer<TModel>(this HtmlHelper<TModel> htmlHelper) where TModel : IReferrer
{
var str = htmlHelper.HiddenFor(hh => hh.Referrer);
var referrer = HttpContext.Current.Request.UrlReferrer.AbsoluteUri;
return new MvcHtmlString(str.ToHtmlString().Replace("value=\"\"", String.Format("value=\"{0}\"", referrer)));
}
...
@Html.HiddenForReferrer()