如何解决带片段标识符的Mvc5重定向
我在家庭控制器中有一个控制器动作:
public ActionResult OAuthCallback(
[Required] string code,[Required] string state)
{
this.Response.Cookies.Add(new HttpCookie(oAuthCodeCookieName,code));
this.Response.Cookies.Add(new HttpCookie(oAuthStateCookieName,state));
var base64decodedState = Encoding.UTF8.GetString(Convert.FromBase64String(state));
var stateObj = JsonConvert.DeserializeObject<Dictionary<string,string>>(base64decodedState);
return new RedirectResult(this.Url.Action(nameof(this.Index) + stateObj["RedirectHash"]));
}
保存在状态中的RedirectHash为#OAuthCallback
,因为我想使用#OAuthCallback片段标识符转发到Index操作。 (http://localhost:1842/#OAuthCallback
)
我已经从旧的StackOverflow答案改编了该代码,该答案似乎在较早的Mvc版本中起作用: Redirect to a hash from the controller using "RedirectToAction"
但是,在Mvc 5.2.7中,此代码转发到localhost:1842/Home/Index%23OAuthCallback
,哈希字符被转义。
如何在Mvc 5中使用片段标识符重定向?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。