API REST in C#

Muhammad Maisam Abbas 12 ottobre 2023
API REST in C#

Questo tutorial discuterà i metodi per effettuare una chiamata all’API REST in C#.

Chiamata API REST con il client RestSharp in C#

Il RestSharp è probabilmente il client API REST più popolare in C#. Con questo client possiamo eseguire il cast dei dati ricevuti dall’API in Plain Old Class Objects (POCO). A tale scopo, dobbiamo prima creare una classe del modello di dati che contenga i campi da restituire dalla chiamata API. L’esempio di codice seguente mostra una classe del modello di dati di esempio in C#. Il client RestSharp è un pacchetto di terze parti e non è preinstallato. Dobbiamo installare il pacchetto RestSharp affinché questo approccio funzioni.

class dataModel {
  public int UserID { get; set; }
  public string UserName { get; set; }
}

La classe dataModel di cui sopra può salvare l’ID e il nome degli utenti restituiti nella risposta alla chiamata API. Il seguente esempio di codice ci mostra come possiamo eseguire una chiamata API con il client RestSharp in C#.

Uri Url = new Uri("https://exampleUrl.com");
IRestClient restClient = new RestClient(Url);
IRestRequest restRequest = new RestRequest(
    "get", Method.GET) { Credentials = new NetworkCredential("Admin", "strongpassword") };
IRestResponse<dataModel> restResponse = restClient.Execute<dataModel>(restRequest);

if (restResponse.IsSuccessful) {
  dataModel model = restResponse.Data;
} else {
  Console.WriteLine(restResponse.ErrorMessage);
}

Nel codice precedente, abbiamo effettuato una richiesta GET a un’API rest con il client RestSharp in C#. Abbiamo creato una classe che contiene i dati restituiti dall’API chiamata classe dataModel. Abbiamo quindi eseguito la nostra richiesta e salvato i dati restituiti nella risposta in un’istanza della classe dataModel.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Articolo correlato - Csharp Network