Swagger Api C#

1. Loo uus ASP.NET Core projekt

  • Samm 1: Ava Visual Studio.
  • Samm 2: Vali “Create a new project” ja vali ASP.NET Core Web API.
  • Samm 3: Pane oma projektile nimi (näiteks “KasutajaApi”) ja vajuta “Create”.

2. Loo mudel (Model)

Mudeli klass kirjeldab andmete struktuuri, näiteks kasutaja andmeid.

3. Loo API kontroller (Controller)

Kontroller määrab, kuidas API teenindab päringuid (GET, POST, DELETE jne).

4. Käivita API

  • Samm 1: Vajuta F5, et käivitada projekt. See avab sinu API brauseris.
  • Samm 2: Testi päringuid Postmanis või brauseri kaudu:
    • GET: /kasutaja (tagastab kasutaja andmed).
    • POST: /kasutaja/lisa/2/UusKasutaja/SalajaneParool/John/Doe (lisab uue kasutaja).
    • DELETE: /kasutaja/kustuta (kustutab kasutaja).

Minu API Näitused:



Tagastab lihtsa “Hello world” sõnumi koos praeguse kuupäeva ja kellaajaga.

Võtab parameetrina nime ja tagastab tervitussõnumi sellele nimel

Liidab kaks URL-is antud numbrit ja tagastab tulemuse.

Korrutab kaks URL-is antud numbrit ja tagastab tulemuse.

Salvestab konsoolilogidesse teateid vastavalt antud arvule.

Tagastab juhusliku täisarvu.

Võtab sünniaasta ja arvutab ligikaudse vanuse.

Kirjeldab kahte URL-is antud numbrit lauses.

Tagastab ühe toote (Toode objekti) detailid.

Suurendab toote hinda ühe võrra ja tagastab uuendatud toote

GET: tooted
Tagastab kõigi toodete (Toode objektide) nimekirja.

DELETE: tooted/kustuta/{index}
Kustutab toote nimekirjast indeksi alusel ja tagastab uuendatud nimekirja.

DELETE: tooted/kustuta2/{index}
Kustutab toote ja tagastab kinnituseteate.

POST: tooted/lisa/{id}/{nimi}/{hind}/{aktiivne}
Lisab uue toote koos antud ID, nime, hinna ja aktiivsuse staatusega ning tagastab uuendatud nimekirja.

PATCH: tooted/hind-dollaritesse/{kurss}
Uuendab kõigi toodete hindu, korrutades need antud vahetuskursiga, ja tagastab uuendatud nimekirja.

1. ParcelMachineController

Handles fetching parcel machine locations from an external API (Omniva).

GET GetParcelMachines(): Makes an HTTP GET request to Omniva’s API and returns the response containing the parcel machine locations as JSON.

Constructor: Injects HttpClient for making HTTP requests.

Kasutaja mudel

Määratleb Kasutaja klassi, mis sisaldab kasutajaandmeid:

  • Atribuudid:
    • Id: Kasutaja unikaalne ID.
    • Kasutajanimi: Kasutajanimi.
    • Parool: Parool.
    • Eesnimi: Eesnimi.
    • Perenimi: Perekonnanimi.
  • Konstruktor: Initsialiseerib Kasutaja objekti antud parameetritega (id, kasutajanimi, parool, eesnimi, perenimi).

KasutajadController

Tegeleb kasutajatega (Kasutajad) seotud toimingutega, nagu nimekirja kuvamine, lisamine ja kustutamine.

  • Privaatne muutuja _tooted: Eeldefineeritud kasutajate (Kasutaja) nimekiri, mis on täidetud näidisandmetega.
  • GET Get(): Tagastab kasutajate nimekirja (_tooted).
  • DELETE Delete(index): Eemaldab määratud indeksi alusel kasutaja nimekirjast ja tagastab uuendatud nimekirja.
  • DELETE Delete2(index): Eemaldab määratud indeksi alusel kasutaja ja tagastab kinnitussõnumi.
  • POST Add(id, nimickamee, parool, nimi, perenimi): Lisab uue kasutaja antud parameetritega nimekirja ja tagastab uuendatud nimekirja.
  • GET GetTootedFromAnotherApi(): Pärib toodete (Toode) nimekirja teisest API-st ja tagastab need pärast deserialiseerimist.