RestSharp para C# (.NET): guia completo com exemplos

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

O que é RestSharp e para que serve?

\n\n

RestSharp é uma biblioteca open-source popular para a linguagem C# (.NET), projetada para simplificar o trabalho com APIs RESTful. Ela fornece uma interface conveniente e intuitiva para executar requisições HTTP (GET, POST, PUT, DELETE, PATCH e outras) e processar respostas de serviços web.

\n\n

RestSharp resolve várias tarefas principais:

\n
    \n
  • Simplificação do código: Em vez de escrever código extenso usando HttpClient, o RestSharp oferece uma interface fluente e concisa.
  • \n
  • Serialização/desserialização automática: A biblioteca converte automaticamente seus objetos C# para JSON/XML e vice-versa, eliminando o trabalho manual.
  • \n
  • Tratamento conveniente de erros: O RestSharp fornece classes claras para lidar com status HTTP e exceções.
  • \n
  • Suporte a autenticação: Suporte integrado para OAuth, Basic Auth, JWT e outros esquemas.
  • \n
  • Trabalho com arquivos: Upload e download simples de arquivos.
  • \n
\n\n

A biblioteca é amplamente utilizada em aplicações .NET (ASP.NET Core, aplicações de console, Xamarin, Unity) para integração com serviços externos: redes sociais, sistemas de pagamento, plataformas em nuvem, etc.

\n\n

Instalação do RestSharp

\n\n

O RestSharp é instalado através do gerenciador de pacotes NuGet. Escolha um dos métodos:

\n\n

Via Package Manager Console (Visual Studio):

\n
Install-Package RestSharp
\n\n

Via .NET CLI (linha de comando):

\n
dotnet add package RestSharp
\n\n

Via interface NuGet (Visual Studio/Rider):

\n

Abra Manage NuGet Packages → encontre RestSharp → instale a versão estável mais recente.

\n\n

Após a instalação, adicione a diretiva using ao seu código:

\n
using RestSharp;
\n\n

Início rápido: primeira requisição

\n\n

Vamos fazer uma requisição GET simples para uma API pública (JSONPlaceholder) e obter uma lista de usuários.

\n\n
using RestSharp;\n\nvar client = new RestClient("https://jsonplaceholder.typicode.com");\nvar request = new RestRequest("/users", Method.Get);\n\nvar response = client.Execute(request);\n\nif (response.IsSuccessful)\n{\n    Console.WriteLine(response.Content); // Exibirá a string JSON\n}\nelse\n{\n    Console.WriteLine($"Erro: {response.StatusCode} - {response.ErrorMessage}");\n}
\n\n

Este código cria um cliente, forma uma requisição GET para o endpoint /users e exibe a resposta no console. Observe: response.IsSuccessful verifica se o status da resposta está no intervalo 200-299.

\n\n

Principais métodos e funções do RestSharp

\n\n

Abaixo estão os principais métodos da biblioteca com descrição, parâmetros e exemplos.

\n\n

1. RestClient(string baseUrl) — Construtor do cliente

\n

Descrição: Cria uma instância do cliente HTTP com uma URL base. Todas as requisições subsequentes usarão esta URL como base.

\n

Parâmetros:

\n
    \n
  • baseUrl (string) — endereço base da API (por exemplo, "https://api.example.com").
  • \n
\n

Exemplo:

\n
var client = new RestClient("https://api.github.com");
\n\n

2. RestRequest(string resource, Method method) — Criação da requisição

\n

Descrição: Forma uma requisição HTTP para o recurso especificado com o método definido (GET, POST, PUT, DELETE, etc.).

\n

Parâmetros:

\n
    \n
  • resource (string) — caminho relativo para o recurso (por exemplo, "/users").
  • \n
  • method (Method) — método HTTP da enumeração Method (Get, Post, Put, Delete, Patch, Head, Options).
  • \n
\n

Exemplo:

\n
var request = new RestRequ                    

Recommendations