没有WebBrowser的WPF客户端登录

时间:2018-08-16 02:19:06

标签: identityserver4

我有一个使用IdentityServer的有角度的网站,看来工作正常。该网站由API支持。我还需要有一个Windows wpf应用程序,该应用程序将允许用户使用相同的凭据登录,然后使用相同的api。

我可以看到执行此操作的WPF示例,但是它们使用Web浏览器和HttpListener进行响应。我宁愿不这样做!

据我所知:

  var disco = await DiscoveryClient.GetAsync(_options.IdentityUrl);
  if (!disco.IsError)
  {
    //var tokenClient = new TokenClient(disco.TokenEndpoint, "client.web", "secret");

    var client = new HttpClient();

    var passwordRequest = new PasswordTokenRequest
    {
      Address = disco.TokenEndpoint,
      GrantType = GrantTypes.Password,

      ClientId = "client.web",
      ClientCredentialStyle = ClientCredentialStyle.PostBody,

      UserName = request.Email,
      Password = SecureStringToString(request.Password)
    };

    var response = await client.RequestPasswordTokenAsync(passwordRequest);
  }

我在允许的授予类型中添加了密码。

响应为invalid_client。

有人这样做吗?

0 个答案:

没有答案