从WPF应用程序验证ASP.NET MVC用户

Iga*_*nik 2 authentication wpf asp.net-mvc webclient networkcredentials

如何验证ASP.NET MVC应用程序的用户(使用用户名和密码)?我正在尝试使用WebClient,传递NetworkCredentials,从我的WPF客户端将请求发布到ASP.NET MVC应用程序.如何在服务器上处理此请求?我如何获得通过的用户名和密码?

我在ASP.NET MVC应用程序中使用表单身份验证(使用新项目创建的默认值).

Dar*_*rov 5

表单身份验证分两步进行:

  1. 用户进入LogIn页面并输入他的用户名和密码并将其发送到服务器
  2. 服务器验证它们,如果它们是正确的,它会发出一个发送给客户端的验证cookie.客户端存储此cookie并将其随后的每个请求发送到服务器.

因此,要在WPF应用程序中实现此目的,您需要首先获取身份验证cookie.因此,首先向LogIn页面发送POST请求以及用户名和密码,并读取返回的cookie(为此,您需要在HttpWebRequest上设置CookieContainer属性,以便能够捕获cookie).获得cookie后,您可以在后续调用经过身份验证的页面中重用cookie容器.

您可以签出此示例代码以帮助您(只需替换地址和参数名称).