AJAX Get / Post in MVC2应用程序在使用授权标签时嵌入登录页面

时间:2011-01-07 20:43:12

标签: asp.net jquery ajax asp.net-mvc-2

我有一个使用表单授权和会话超时的MVC2应用程序。我在整个应用程序中使用jquery ajax调用来检索或提交数据(以部分视图的形式)。

当会话超时时,在发布到应用程序后,mvc2会返回一个重定向,提示浏览器检索我的登录页面,然后将其嵌入当前页面。这产生了一个嵌入我当前视图中的视图,这显然是不可取的。我试图实现SO上其他帖子中提到的解决方案,其中概述了与此博客文章中的步骤类似的步骤:http://craftycodeblog.com/2010/05/15/asp-net-mvc-ajax-redirect/

但是,也许是因为我正在使用授权注释,例如:

[Authorize(Roles = "Patient, Staff, Provider, Administrator")]

我发现解决方案似乎无效。是否有人知道一个解决方案会以与博客文章(返回document.location重定向)中概述的类似方式改变我的C#响应,这将用于授权注释?

1 个答案:

答案 0 :(得分:1)

我实际上最终使用了此响应中描述的解决方案:

More control on ASP.Net MVC's Authorize; to keep AJAX requests AJAXy

不幸的是,大多数处理主题的帖子(包括通过Clicktricity链接的帖子)似乎都描述了解决方案,但是只有很少的示例代码,并且似乎倾向于修改global.asax中的部分请求结构,我不想这样做。