项目 URL 类型时显示登录索引

Posted

技术标签:

【中文标题】项目 URL 类型时显示登录索引【英文标题】:Displaying Login Index When Project Url Types 【发布时间】:2020-06-06 16:23:53 【问题描述】:

这可能是一个最简单的问题,但我面临以下问题。 我有一个项目,并在http://localhost/Some.Web/Login/Index 有登录视图。如果我输入http://localhost/Some.Web/,我想将其重定向到登录页面。目前我收到“找不到资源。”错误消息。我的路由配置有以下条目。

 routes.MapRoute(
                name: "Default",
                url: "controller/action/id",
                defaults: new  controller = "Login", action = "Index", id = UrlParameter.Optional 
            );

我做错了什么。接受建议。

【问题讨论】:

我希望您不要尝试对用户进行身份验证?您可以在控制器顶部添加Authorize,然后asp.net.mvc 会为您处理。另外,您的Login 控制器中有GET 方法Index 吗? @Bosco 我在登录控制器的 Index 方法上有 GET,在 Home 控制器上有 Authorize 属性 【参考方案1】:

有两种方法可以设置自定义路由,例如[routre("your route")]

当你设置这个时,在你的路由中添加这个。

routes.MapMvcAttributeRoutes(); to the routeconfig.cs file

您的控制器中还有另一种方法检查用户是否授权重定向到该页面,否则重定向到登录页面

if(userIsValid)

redirect("main page here")

else

redirect("login page here")


【讨论】:

我想加载登录控制器索引方法,当用户键入这个url时,如果用户没有通过身份验证,则为“localhost/Some.Web”,如果用户通过身份验证加载家庭控制器索引方法。 如果用户登录则使用会话,如果他没有登录则可以转到该页面然后重定向到主页

以上是关于项目 URL 类型时显示登录索引的主要内容,如果未能解决你的问题,请参考以下文章

用户登录时不显示表单,但用户注销时显示

Cocoapods 出现问题,在安装 pod 时显示错误“无法确定 URL 的 repo 类型”

SQLite 在通过 URL 访问时显示数据

在 Angular 中附加 youtube 视频 URL 时显示 ERR_CERT_AUTHORITY_INVALID 错误

尝试在使用OAuth演示者时显示UINavigationController

Swift UICollectionView 在点击时显示/隐藏项目