我有一个问题,我想得到一条建议。 我们正在构建一个ASP.NET MVC应用程序,该应用程序将具有:Web页面(常规MVC控制器)和移动设备使用的RESTful API的WebAPI部分。 现在,网页将使用表单身份验证,并将有很多ajax请求。另一方面,移动设备将对WebAPI使用基本身份验证标头。
我想要做的是允许在同一个WebAPI控制器方法上同时使用Forms身份验证(对于browser / ajax用户)和Basic身份验证(对于移动请求)。
原因是我不想复制内容,因为许多ajax请求需要与移动web api请求完全相同的数据。
所以,我在考虑是否应该使用过滤器:
[BasicAuthFilter]
[FormsAuthenticationFilter]
MethodInWebAPIController()
在这种情况下,无论请求来自哪里,方法都会进行身份验证。
问题: 1)是正确的方法吗? 2)有人可以指出一些最佳实践的代码示例如何做到这一点?