我有一个使用Identity 2.0进行身份验证/授权的ASP.NET MVC 5应用程序。现在,我想通过Web Api 2.0向我的Android应用程序提供对Web应用程序中数据的访问权限。
我的问题是:如何控制Android应用程序的授权/身份验证访问?
在Android端,我使用"org.springframework.web.client.RestTemplate",并将此HTTP头添加到我的请求中:
HttpAuthentication authHeader = new HttpBasicAuthentication("username", "password");
HttpHeaders requestHeaders = new HttpHeaders();
requestHeaders.setAuthorization(authHeader);
HttpEntity<?> requestEntity = new HttpEntity<Object>(requestHeaders);
我应该创建一个过滤器(Filter)还是一个 HttpModule,在那里分析 HTTP Header 并查询数据库以检查是否存在该用户?
对于 HTML / JavaScript 前端,我清楚它如何工作。在每次成功的登录后,都会使用一个 cookie,用于所有后续调用,但是对于我的 Android 应用程序,最佳策略是什么?
更新: 找到了这两个链接,但我不确定是否应该采取这种方式: http://springinpractice.com/2012/04/08/sending-cookies-with-resttemplate http://blog.mikepearce.net/2010/08/24/cookies-and-the-restful-api/