Como fazer uma requisição HTTP em C#?
Olá colegas!
Me deparei com uma tarefa aparentemente trivial — fazer uma requisição HTTP para uma API externa a partir de um aplicativo console .NET 6. Li vários tutoriais, mas os exemplos são dispersos: em alguns usam
Tentei escrever uma requisição GET simples usando
Executo no método
Me deparei com uma tarefa aparentemente trivial — fazer uma requisição HTTP para uma API externa a partir de um aplicativo console .NET 6. Li vários tutoriais, mas os exemplos são dispersos: em alguns usam
HttpClient, em outros WebClient (obsoleto?), e em alguns — RestSharp. Quero entender a abordagem moderna e correta.Tentei escrever uma requisição GET simples usando
HttpClient, mas o aplicativo trava. Aqui está o código:var client = new HttpClient();
var response = await client.GetAsync("https://api.github.com/zen");
var content = await response.Content.ReadAsStringAsync();
Console.WriteLine(content);Executo no método
Main (sem async), recebo um aviso de que o código assíncrono não está sendo aguardado. Tentei adicionar .Result — começou um deadlock. Também não está claro se é necessário chamar Dispose() para HttpClient e como tratar erros corretamente (timeout