Programmēšana

Kā patērēt ASP.NET Core Web API, izmantojot RestSharp

REST ir akronīms reprezentatīvai valsts nodošanai, arhitektūras stils, kas pēdējos gados ir kļuvis ārkārtīgi populārs. RESTful API ir tas, kas tiek veidots saskaņā ar REST principiem un vadlīnijām. RESTful API parasti kā atbildi atgriež vienkāršu tekstu, JSON vai XML.

RestSharp ir atvērtā pirmkoda HTTP klienta bibliotēka, kas atvieglo RESTful pakalpojumu lietošanu. RestSharp nodrošina izstrādātājam draudzīgu saskarni darbam ar RESTful pakalpojumiem, vienlaikus abstrahējot iekšējās sarežģītības darbā ar HTTP pieprasījumiem. RestSharp atbalsta gan sinhronos, gan asinhronos pieprasījumus.

Šajā rakstā ir sniegta diskusija par to, kā mēs varam strādāt ar RestSharp, lai patērētu pakalpojumus, kas izveidoti, izmantojot ASP.NET Core.

Lai strādātu ar šajā rakstā ietvertajiem kodu piemēriem, sistēmā jābūt instalētai Visual Studio 2019. Ja jums vēl nav kopijas, varat lejupielādēt Visual Studio 2019 šeit.

Izveidojiet ASP.NET Core API projektu

Vispirms izveidosim ASP.NET Core projektu Visual Studio. Pieņemot, ka Visual Studio 2019 ir instalēta jūsu sistēmā, veiciet tālāk norādītās darbības, lai izveidotu jaunu ASP.Net Core projektu Visual Studio.

  1. Palaidiet Visual Studio IDE.
  2. Noklikšķiniet uz “Izveidot jaunu projektu”.
  3. Logā “Izveidot jaunu projektu” parādīto veidņu sarakstā atlasiet “ASP.NET Core Web Application”.
  4. Noklikšķiniet uz Tālāk.
  5. Logā “Konfigurēt jauno projektu” norādiet jaunā projekta nosaukumu un vietu.
  6. Noklikšķiniet uz Izveidot.
  7. Logā “Izveidot jaunu ASP.Net Core tīmekļa lietojumprogrammu” augšpusē esošajā nolaižamajā sarakstā atlasiet .NET Core kā izpildlaiku un ASP.NET Core 2.2 (vai jaunāku). Es šeit izmantošu ASP.NET Core 3.0.
  8. Atlasiet “API” kā projekta veidni, lai izveidotu jaunu ASP.NET Core API lietojumprogrammu.
  9. Pārliecinieties, vai nav atzīmētas izvēles rūtiņas “Iespējot Docker atbalstu” un “Konfigurēt HTTPS”, jo mēs šeit neizmantosim šīs funkcijas.
  10. Pārliecinieties, ka autentifikācija ir iestatīta kā “Nav autentifikācijas”, jo mēs arī neizmantosim autentifikāciju.
  11. Noklikšķiniet uz Izveidot.

Veicot šīs darbības, Visual Studio tiks izveidots jauns ASP.NET Core API projekts. Pēc tam logā Solution Explorer atlasiet mapi Controllers solution, noklikšķiniet uz “Add -> Controller…” un atlasiet “API Controller with Read / Write Actions”. Nosauciet šo jauno kontrolieri DefaultController.

Mēs izmantosim šo projektu šī raksta nākamajās sadaļās.

Ievietojiet DefaultController ASP.NET Core API

Atveriet failu DefaultController.cs un nomainiet tajā esošo kodu ar zemāk norādīto:

izmantojot Microsoft.AspNetCore.Mvc;

izmantojot System.Collections.Generic;

nosaukumvieta RESTAPIDemo.Controllers

{

[Maršruts ("api / [kontrolieris]")]

[ApiController]

publiskā klase DefaultController: ControllerBase

    {

privāti lasāms tikai vārdnīcas autori = new Dictionary ();

public DefaultController ()

        {

autori.Pievienot (1, "Joydip Kanjilal");

autori.Pievienot (2, "Stīvs Smits");

autori.Pievienot (3, "Michele Smith");

        }

[HttpGet]

public List Get ()

        {

Saraksts lstAuthors = jauns saraksts ();

foreach (KeyValuePair keyValuePair autoros)

lstAuthors.Add (keyValuePair.Value);

atgriezties lstAuthors;

        }

[HttpGet ("{id}", nosaukums = "Iegūt")]

publiskā virkne Get (int id)

        {

atgriešanās autori [id];

        }

[HttpPost]

public void Post (virknes vērtība [FromBody])

        {

autori.Pievienot (4, vērtība);

        }

[HttpPut ("{id}")]

public void Put (int id, [FromBody] virknes vērtība)

        {

autori [id] = vērtība;

        }

[HttpDelete ("{id}")]

public void Dzēst (int id)

        {

autori. Noņemt (id);

        }

    }

}

Skatiet iepriekš klasi DefaultController. Ņemiet vērā, ka šajā klasē ir darbības metodes, kas atbilst katram no HTTP darbības vārdiem GET, POST, PUT un DELETE. Vienkāršības labad datu glabāšanai un izgūšanai šeit izmantojam vārdnīcu. Jūs varat pārbaudīt šo API, izmantojot savu tīmekļa pārlūkprogrammu vai tādus rīkus kā Postman vai Fiddler. Ņemiet vērā, ka esmu vienkārši kodējis ID HttpPost metodē tikai vienkāršības labad. Jums vajadzētu to ieviest savā veidā, lai ģenerētu unikālu atslēgu.

Tik tālu, labi. Turpmākajās sadaļās mēs uzzināsim, kā strādāt ar RestSharp, lai patērētu mūsu izveidoto API.

Izveidojiet klientu, lai patērētu API

Mēs izmantosim konsoles lietojumprogrammu kā klientu, lai patērētu iepriekš izveidoto API. Pieņemot, ka Visual Studio 2019 ir instalēta jūsu sistēmā, veiciet tālāk norādītās darbības, lai izveidotu jaunu .NET Core Console lietojumprogrammas projektu Visual Studio.

  1. Palaidiet Visual Studio IDE.
  2. Noklikšķiniet uz “Izveidot jaunu projektu”.
  3. Logā “Izveidot jaunu projektu” parādīto veidņu sarakstā atlasiet “Console App (.NET Core)”.
  4. Noklikšķiniet uz Tālāk.
  5. Nākamajā logā “Konfigurēt jauno projektu” norādiet jaunā projekta nosaukumu un vietu.
  6. Noklikšķiniet uz Izveidot.

Tas ir viss, kas mums jādara, lai izveidotu jaunu .NET Core Console lietojumprogrammas projektu.

Instalējiet RestSharp NuGet pakotni

Lai strādātu ar RestSharp, jāinstalē RestSharp pakotne no NuGet. To var izdarīt, izmantojot NuGet pakešu pārvaldnieku Visual Studio 2019 IDE, vai arī izpildot šādu komandu NuGet pakešu pārvaldnieka konsolē:

Install-Package RestSharp

Patērējiet ASP.NET Core API, izmantojot RestSharp

Kad esat instalējis RestSharp savā projektā, varat sākt to izmantot. Pirmkārt, jums būs jāizveido RestClient eksemplārs. Šis koda fragments parāda, kā jūs varat instantificēt un inicializēt RestClient klasi. Ņemiet vērā, ka pamata URL mēs nododam klases RestClient konstruktoram.

RestClient klients = jauns RestClient ("// localhost: 58179 / api /");

Pēc tam jums jāizveido klases RestRequest eksemplārs, nododot resursa nosaukumu un izmantojamo metodi. Šis koda fragments parāda, kā to var panākt.

RestRequest pieprasījums = new RestRequest ("Noklusējums", Method.GET);

Visbeidzot, jums ir jāizpilda pieprasījums, deserializējiet atbildi un atbilstoši piešķiriet objektam, kā parādīts tālāk sniegtajā koda fragmentā.

IRestResponse atbilde = klients. Izpildīt(pieprasījums);

Šis ir pilnīgs kodu saraksts jūsu atsaucei.

izmantojot RestSharp;

izmantojot sistēmu;

izmantojot System.Collections.Generic;

nosaukumvieta RESTSharpClientDemo

{

klases programma

    {

privāts statisks RestClient klients = jauns

RestClient ("// localhost: 58179 / api /");

static void Main (virkne [] args)

        {

RestRequest pieprasījums = new RestRequest ("Noklusējums",

Metode.GET);

IRestResponse atbilde =

klients. Izpildīt(pieprasījums);

Console.ReadKey ();

        }

    }

}

Lai veiktu POST pieprasījumu, izmantojot RestSharp, varat izmantot šādu kodu:

RestRequest pieprasījums = new RestRequest ("Noklusējums", Method.POST);

pieprasījums.AddJsonBody ("Roberts Maikls");

var atbilde = klients. Izpildīt (pieprasījums);

RestSharp ir pieejams vairākās .NET platformās, un tas ir viens no iemesliem, kāpēc tas ir tik populārs. Jāatzīmē arī RestSharp automātiskās deserializācijas iespējas. Jūs varat uzzināt vairāk par RestSharp vietnē GitHub.

$config[zx-auto] not found$config[zx-overlay] not found