Ohjelmointi

ASP.NET Core Web -sovellusliittymän kuluttaminen RestSharpin avulla

REST on lyhenne sanoista Representational State Transfer, arkkitehtoninen tyyli, josta on tullut erittäin suosittu viime vuosina. RESTful-sovellusliittymä on se, joka on rakennettu RESTin periaatteiden ja ohjeiden mukaisesti. RESTful-sovellusliittymät palauttavat yleensä vastauksena pelkkää tekstiä, JSON- tai XML-tiedostoja.

RestSharp on avoimen lähdekoodin HTTP-asiakaskirjasto, joka helpottaa RESTful-palvelujen käyttöä. RestSharp tarjoaa kehittäjäystävällisen käyttöliittymän työskennellä RESTful-palveluiden kanssa samalla, kun se hämmentää HTTP-pyyntöjen käsittelyn sisäisiä yksityiskohtia. RestSharp tukee sekä synkronisia että asynkronisia pyyntöjä.

Tässä artikkelissa käsitellään sitä, kuinka voimme työskennellä RestSharpin kanssa ASP.NET Core -sovelluksen avulla rakennettujen palvelujen kuluttamiseksi.

Jotta voit työskennellä tämän artikkelin koodiesimerkkien kanssa, järjestelmässäsi on oltava asennettuna Visual Studio 2019. Jos sinulla ei vielä ole kopiota, voit ladata Visual Studio 2019 täältä.

Luo ASP.NET Core API -projekti

Ensinnäkin, luodaan ASP.NET Core -projekti Visual Studiossa. Olettaen, että Visual Studio 2019 on asennettu järjestelmään, luo uusi ASP.Net Core -projekti Visual Studiossa noudattamalla seuraavia ohjeita.

  1. Käynnistä Visual Studio IDE.
  2. Napsauta Luo uusi projekti.
  3. Valitse Luo uusi projekti -ikkunassa ”ASP.NET Core Web Application” näytetystä malliluettelosta.
  4. Napsauta Seuraava.
  5. Määritä uuden projektin määritys -ikkunassa uuden projektin nimi ja sijainti.
  6. Napsauta Luo.
  7. Valitse Luo uusi ASP.Net Core -verkkosovellus -ikkunassa .NET Core ajonaikaiseksi ja ASP.NET Core 2.2 (tai uudempi) yläreunan avattavasta luettelosta. Käytän täällä ASP.NET Core 3.0: ta.
  8. Luo uusi ASP.NET Core API -sovellus valitsemalla projektimalliksi “API”.
  9. Varmista, että valintaruudut Ota Docker-tuki käyttöön ja Määritä HTTPS: lle ei ole valittu, koska emme käytä näitä ominaisuuksia täällä.
  10. Varmista, että todennukseksi on määritetty Ei todentamista, koska emme myöskään käytä todennusta.
  11. Napsauta Luo.

Näiden vaiheiden seuraaminen luo uuden ASP.NET Core API -projektin Visual Studioon. Valitse seuraavaksi Ohjainten ratkaisukansio Solution Explorer -ikkunassa, napsauta "Lisää -> Ohjain ..." ja valitse "API-ohjain luku- / kirjoitustoiminnoilla". Nimeä tämä uusi ohjain DefaultController.

Käytämme tätä projektia tämän artikkelin seuraavissa osioissa.

Ota DefaultController käyttöön ASP.NET Core -sovellusliittymässä

Avaa DefaultController.cs-tiedosto ja korvaa siinä oleva koodi alla olevalla:

käyttämällä Microsoft.AspNetCore.Mvc;

käyttämällä System.Collections.Generic;

nimitila RESTAPIDemo.Controllers

{

[Reitti ("api / [ohjain]")]

[ApiController]

public class DefaultController: ControllerBase

    {

yksityiset vain luettavat sanakirjan kirjoittajat = uusi sanakirja ();

public DefaultController ()

        {

kirjoittajat.Lisää (1, "Joydip Kanjilal");

kirjoittajat.Lisää (2, "Steve Smith");

kirjoittajat.Lisää (3, "Michele Smith");

        }

[HttpGet]

julkinen luettelo Hae ()

        {

Lista lstAuthors = uusi Lista ();

foreach (KeyValuePair tekijöissä keyValuePair)

lstAuthors.Add (keyValuePair.Value);

paluu lstAuthors;

        }

[HttpGet ("{id}", nimi = "Hae")]

julkinen merkkijono Get (int id)

        {

palauttavat kirjoittajat [id];

        }

[HttpPost]

public void Post ([FromBody] merkkijonoarvo)

        {

kirjoittajat.Lisää (4, arvo);

        }

[HttpPut ("{id}")]

public void Put (int id, [FromBody] merkkijonoarvo)

        {

kirjoittajat [id] = arvo;

        }

[HttpDelete ("{id}")]

public void Poista (int id)

        {

kirjoittajat.Poista (id);

        }

    }

}

Katso yllä olevaa DefaultController-luokkaa. Huomaa, että tämä luokka sisältää toimintamenetelmiä, jotka vastaavat kutakin HTTP-verbiä GET, POST, PUT ja DELETE. Yksinkertaisuuden vuoksi käytämme täällä Sanakirjaa tietojen tallentamiseen ja noutamiseen. Voit testata tätä sovellusliittymää verkkoselaimellasi tai työkaluilla, kuten Postman tai Fiddler. Huomaa, että olen yksinkertaisesti koodannut tunnuksen HttpPost-menetelmällä. Sinun tulisi toteuttaa se omalla tavallasi luoda ainutlaatuinen avain.

Toistaiseksi niin hyvä. Seuraavissa osioissa opitaan, miten voimme käyttää RestSharpia rakentamamme sovellusliittymän kuluttamiseen.

Luo asiakas käyttämään sovellusliittymää

Käytämme konsolisovellusta asiakkaana aiemmin rakentamamme sovellusliittymän käyttämiseen. Olettaen, että Visual Studio 2019 on asennettu järjestelmään, luo uusi .NET Core Console -sovellusprojekti Visual Studiossa noudattamalla alla olevia ohjeita.

  1. Käynnistä Visual Studio IDE.
  2. Napsauta Luo uusi projekti.
  3. Valitse Luo uusi projekti -ikkunassa ”Console App (.NET Core)” näytetystä malliluettelosta.
  4. Napsauta Seuraava.
  5. Määritä seuraavan projektin nimi ja sijainti uuden Konfiguroi uusi projekti -ikkunassa.
  6. Napsauta Luo.

Se on kaikki mitä meidän on tehtävä uuden .NET Core Console -sovellusprojektin luomiseksi.

Asenna RestSharp NuGet -paketti

Jos haluat työskennellä RestSharpin kanssa, sinun on asennettava RestSharp-paketti NuGetistä. Voit tehdä tämän joko Visual Studio 2019 IDE: n sisällä olevan NuGet Package Managerin kautta tai suorittamalla seuraavan komennon NuGet Package Manager Consolessa:

Asenna paketti RestSharp

Kuluta ASP.NET Core -sovellusliittymä RestSharpin avulla

Kun olet asentanut RestSharpin projektiisi, voit alkaa käyttää sitä. Ensin sinun on luotava RestClient-ilmentymä. Seuraava koodinpätkä osoittaa, kuinka voit ilmentää ja alustaa RestClient-luokan. Huomaa, että välitämme perus-URL-osoitteen RestClient-luokan rakentajalle.

RestClient-asiakas = uusi RestClient ("// paikallinen isäntä: 58179 / api /");

Seuraavaksi sinun on luotava RestRequest-luokan ilmentymä välittämällä resurssin nimi ja käytettävä menetelmä. Seuraava koodinpätkä osoittaa, miten tämä voidaan saavuttaa.

RestRequest-pyyntö = new RestRequest ("Oletus", Method.GET);

Viimeiseksi sinun on suoritettava pyyntö, poistettava vastaus ja annettava se objektille tarpeen mukaan alla olevan koodinpätkän mukaisesti.

IRestResponse vastaus = asiakas. Suorita(pyyntö);

Seuraava on täydellinen koodiluettelo viitteellesi.

käyttämällä RestSharp;

käyttämällä järjestelmää;

käyttämällä System.Collections.Generic;

nimitila RESTSharpClientDemo

{

luokan ohjelma

    {

staattinen staattinen RestClient-asiakas = uusi

RestClient ("// paikallinen isäntä: 58179 / api /");

staattinen void Main (merkkijono [] args)

        {

RestRequest-pyyntö = new RestRequest ("Oletus",

Menetelmä GET);

IRestResponse vastaus =

Suorita(pyyntö);

Console.ReadKey ();

        }

    }

}

Voit tehdä POST-pyynnön RestSharpin avulla käyttämällä seuraavaa koodia:

RestRequest-pyyntö = new RestRequest ("Oletus", Method.POST);

request.AddJsonBody ("Robert Michael");

var response = asiakas.Suorita (pyyntö);

RestSharp on saatavana useilla .NET-alustoilla, mikä on yksi syy siihen, miksi se on niin suosittu. Myös RestSharpin automaattinen deserialisaatio on huomionarvoista. Voit oppia lisää RestSharpista GitHubissa.

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