我有一个简单的 MVC 应用程序 - 员工列表、删除员工的按钮和登录屏幕
当用户按下按钮删除员工时,他们被要求登录
这会将它们从 EmployeeController 带到处理登录的 AccountController。returnUrl 也传递给它。用户成功通过身份验证,Account 控制器转到 Redirect 到 ReturnUrl,这就是它抛出 404 的地方。
returnUrl = /Employees/Delete/127 - 员工的 ID。据我所见,这是在控制器和 RouteConfig 中正确配置的。
当我删除 [Authorise] 属性时,它工作得很好。所以我怀疑它必须与重定向有关,但我不明白为什么?
编辑:我还在视图中使用 FormMethod.Post 尝试了 HttpPost,但它没有任何区别,但是在离开登录后我不知道它是 os post 还是 get - 或者重定向到返回 url 是否会生成一个 Get 和不是帖子?
再次编辑:考虑到这一点,它可能不是一个好的设计。我要求用户在按下删除按钮后进行授权。除非它们已经被授权,否则我可能不应该公开删除按钮,但无论如何都可以这样做吗?