我使用Simple Membership db创建了一个ASP.NET MVC 4互联网Web应用程序,用于存储用户,角色和配置文件。
在我的应用中,我创建了一个Web API控制器,它将响应 http:// 127.0.0.1/api/users
,并返回以JSON
格式存储在数据库中的所有用户列表。
UsersController
用[Authorize]
属性进行装饰,因此对http:// 127.0.0.1/api/users
的任何调用都必须经过身份验证。
在主页面上,我有一个按钮,一旦按下就会执行一个jQuery ajax GET请求,并显示Web API返回的用户列表(json)。
如果我已登录并按下按钮,则一切正常...将检索并显示用户列表。
如果我未登录,则会显示消息401 - 未经授权
(jquery调用statusCode中的自定义消息),因此由于[Authorize]
属性,它可以正常工作。
我的问题是:如何在Windows 8应用程序或Windows Phone 8或Windows Forms等客户端中,当Web API发出请求以获取用户列表并从客户端显示它们时进行身份验证?换句话说,如何在Web浏览器之外的客户端上进行身份验证?