我的情况很简单。
HttpContext.Request.Headers["Referer"]
屏幕截图位于“添加”页面上。
当我添加布局时,我想更改引荐来源网址,因此当我转发到./Edit引荐来源网址时,应将其设置为其他页面,而不是./Add-以google示例为例,但实际上它应该是“概述”页面。
我需要为此编写自定义中间件吗?
更新: 这不起作用-网址有效,但添加引荐来源网址则无效。
var linkGenerator = HttpContext.RequestServices.GetService<LinkGenerator>();
var url = linkGenerator.GetPathByPage("/LayoutEngine/Administration/Overview");
HttpContext.Response.Headers.Add("Referer", url);
HttpContext.Request.Headers["Referer"] = url;
答案 0 :(得分:0)
HTTP标头仅对当前响应有效。设置重定向时,当前响应包含您的自定义标头,但是当浏览器遵循重定向位置时,这些标头不再存在,您需要将Overview值作为查询字符串发送到Editpage:
.........
var url = linkGenerator.GetPathByPage("/LayoutEngine/Administration/Overview");
.........
return RedirectToPage("./Edit", new{id = result.Result, returnUrl = url});