加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – ASP.Net MVC – 重定向到路由提供Redirect Loop

发布时间:2020-12-16 03:43:25 所属栏目:asp.Net 来源:网络整理
导读:这可能是其中一个简单的问题.我试图在用户成功通过身份验证后重定向,或将其返回到登录页面.但是Success页面位于不同的路径上,我无法使重定向工作. 以下是我在Globals.asax中的路线: routes.MapRoute( _ "Default",_ "{controller}/{action}/{id}",_ New Wit
这可能是其中一个简单的问题.我试图在用户成功通过身份验证后重定向,或将其返回到登录页面.但是Success页面位于不同的路径上,我无法使重定向工作.

以下是我在Globals.asax中的路线:

routes.MapRoute( _
    "Default",_
    "{controller}/{action}/{id}",_
    New With {.controller = "Login",.action = "Index",.id = ""} _
    )
routes.MapRoute( _
    "Stuff",_
    New With {.controller = "Stuff",.id = ""} _
    )

我有2个控制器:LoginController.vb和StuffController.vb. Views / Login / Index.aspx文件包含一个带有代码的简单表单:

<form method="post" action="/Login/Authenticate">

LoginController包含以下代码:

Function Authenticate() As RedirectToRouteResult
    ' authentication code commented out  ;o)

    Return RedirectToRoute("Stuff")
End Function

StuffController包含以下内容:

Function Index()
    ' show stuff..

    Return View()    ' return /Views/Stuff/Index.aspx
End Function

这是我到目前为止所尝试的:

>功能验证()
> Function Authenticate()As ActionResult()
> Function Authenticate()As RedirectToRouteResult()

所有这些都会导致浏览器中的重定向循环超时.我错过了什么?!

解决方法

可能是你的Stuff路线与默认路线的形式完全相同,所以当你打电话时

Return RedirectToRoute("Stuff");

生成的网址格式为:{controller} / {action} / {id},例如再次登录/验证,因为您在Login-controller的Authenticate操作中.

尝试

RedirectToAction("Index","Stuff");

希望有所帮助.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读