2013-01-16 237 views
10

我创建了一个ASP.NET MVC 4 Internet Web应用程序,使用简单成员数据库存储用户,角色和配置文件。ASP.NET MVC4和Web API身份验证+授权(Windows 8和Web)

在我的应用程序中,我创建了一个Web API控制器,它将响应http:// 127.0.0.1/api/users,此调用将返回存储在db中的所有用户列表,如JSON

UsersController装饰[Authorize]属性,因此任何呼叫http:// 127.0.0.1/api/users必须进行身份验证。

在主页面上,我有一个按钮,一旦按下jQuery ajax get请求被执行,并将显示由Web API(json)返回的用户列表。

如果我登录并按下按钮,一切正常......用户列表被检索并显示。

如果我没有登录,消息显示为401 - Unauthorized(jquery call statusCode中的自定义消息),因此它的工作原理与[Authorize]属性一样。

我的问题:当Web API向它发出请求,获取用户列表并从Windows 8应用程序或Windows Phone 8或Windows窗体中显示它们时,如何进行身份验证?换句话说,从网页浏览器以外的客户端?

回答

1

您应该制作另一个api,检查Windows 8应用程序或Windows的身份验证。

如果它通过身份验证成功,那么只有您必须向客户端显示用户列表。