从 WPF 应用程序执行 OAuth 身份验证

Perform OAuth authentication from WPF application

我有一个现有的 Web API 后端,它使用 OAuth 来验证 vue.js 前端调用。这是一个现有的,我无法修改它。 我需要从我编写的新 WPF 应用程序执行身份验证。

我使用表单中的 HttpClient 编写了查询

http://backend/api/signin?grant_type=password&username=user&password=1234hola

但我收到有关 grant_type 的错误消息。有我可以遵循的教程吗?我不认为执行身份验证有那么困难,但我觉得我错过了一些非常愚蠢的东西

提前致谢

您应该按照建议将凭据添加到 header here:

var client = new HttpClient() { BaseAddress = new Uri("http://url.com") };
var request = new HttpRequestMessage(HttpMethod.Post, "/path");

var byteArray = new UTF8Encoding().GetBytes("<clientid>:<clientsecret>");
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Basic", Convert.ToBase64String(byteArray));
...
var response = await client.SendAsync(request);