REST-API in C#

Muhammad Maisam Abbas 12 Oktober 2023
REST-API in C#

In diesem Lernprogramm werden die Methoden zum Ausführen eines REST-API-Aufrufs in C# erläutert.

REST-API-Aufruf mit dem Client RestSharp in C#

Der RestSharp ist wahrscheinlich der beliebteste REST-API-Client in C#. Mit diesem Client können wir die von der API empfangenen Daten in Plain Old Class Objects (POCO) umwandeln. Zu diesem Zweck müssen wir zuerst eine Datenmodellklasse erstellen, die Felder enthält, die vom API-Aufruf zurückgegeben werden sollen. Das folgende Codebeispiel zeigt eine Beispieldatenmodellklasse in C#. Der Client RestSharp ist ein Paket eines Drittanbieters und wird nicht vorinstalliert geliefert. Wir müssen das Paket RestSharp installieren, damit dieser Ansatz funktioniert.

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

Die obige Klasse dataModel kann die in der API-Aufrufantwort zurückgegebene Benutzer-ID und den Namen speichern. Das folgende Codebeispiel zeigt uns, wie wir einen API-Aufruf mit dem Client RestSharp in C# ausführen können.

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);
}

Im obigen Code haben wir eine GET-Anfrage an eine Rest-API mit dem Client RestSharp in C# gestellt. Wir haben eine Klasse erstellt, die die von der API zurückgegebenen Daten enthält, die als dataModel-Klasse bezeichnet wird. Wir haben dann unsere Anfrage ausgeführt und die in der Antwort zurückgegebenen Daten in einer Instanz der Klasse dataModel gespeichert.

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

Verwandter Artikel - Csharp Network