Vaatimukset: Scalar on varsin tehokas ja pystyy automaattisesti generoimaan HTTP-kutsukoodin eri kielillä API-dokumentaatiosta, käyttäen Scalaria Swaggerin sijaan API-dokumentaation näyttämiseen.
.NET 9:n julkaisun jälkeen ASP.NET virallinen Core-tiimi ilmoitti, että Swashbuckle.AspNetCore (projekti, joka tarjoaa Swagger-työkalun ASP.NET Core API:lle) poistetaan ASP.NET Core Web API -pohjasta. Tämä tarkoittaa, että tulevaisuudessa, kun luomme Web API -projekteja, Swagger API -dokumentaatiota ei enää luoda automaattisesti. Kokeillaan siis tänään Scalaria interaktiiviseen API-dokumentaatioon EasySQLite .NET 9 -projektissamme.
Linkki:Hyperlinkin kirjautuminen on näkyvissä.
Swaggerin poistamisen syyt voidaan tiivistää seuraavasti:
- Swashbucklen huono ylläpito: Swashbuckle-projektia eivät enää aktiivisesti ylläpitää yhteisön omistajat, monet ongelmat ovat edelleen ratkaisematta, eikä virallista .NET 8:n yhteensopivaa versiota ole julkaistu.
- Siirrytään Microsoft.AspNetCore.OpenApin puoleen: ASP.NET Core -tiimi kehittää Microsoft.AspNetCore.OpenApin ominaisuuksia korvatakseen Swashbucklen ja mahdollistaakseen OpenAPI-dokumentaation generoinnin.
- Nykyiset vaihtoehdot: Swashbucklen lisäksi muut projektit, kuten NSwag, tukevat OpenAPI-dokumentaation generointia ja asiakas/palvelin-koodin generointia, jolloin kehittäjät voivat valita sopivan ratkaisun projektin tarpeiden mukaan.
- Parannettu sisäänrakennettu API-tuki: Core 3.1 ASP.NET stä lähtien kehys on tarjonnut metatietotukea, kuten ApiExplorerin. Yhdistettynä Visual Studion ja Visual Studio Coden sisäänrakennettuun .http-tiedostotukeen API-testaus ja virheenkorjauskokemus on entistäkin parempi.
- OpenAPI:n edistäminen ydinkomponenttina: ASP.NET Core-tiimi aikoo edelleen parantaa OpenAPI-integraatiota .NET 9:ssä, tehden siitä ydinkomponentin, joka keskittyy JSON-muotoisen OpenAPI-dokumentaation tuottamiseen.
Skalaari
Scalar on tehokas ja helppokäyttöinen API-asiakas- ja dokumentaation generointityökalu, joka sopii kaiken kokoisiin API-projekteihin ja tukee useita ohjelmointikieliä ja alustoja.
Avoimen lähdekoodin osoite:Hyperlinkin kirjautuminen on näkyvissä.
ASP.NET Ydin integroi skalaaria
Integroitu dokumentaatio:Hyperlinkin kirjautuminen on näkyvissä.
Luo ASP.NET Core 9 -projekti, johon viitataan seuraavasti:
Lisää palvelut ja skalaariväliohjelmisto Program.cs:ssa, koodi on seuraava:
Muokkaus WeatherForecastController.cs ohjain, koodaa seuraavasti:
Käynnistä projekti, avaa selaimesi ja vieraile seuraavassa sivussa:http://localhost:5088/api-docs, kuten alla olevassa kuvassa näkyy:
Voit valita tietyn kutsukoodin generoinnin HTTP-kirjastoille eri kielillä. Otetaan esimerkiksi C# HttpClient -kirjasto, ja generoitu koodi on seuraava:
Se tukee myös verkkopohjaista käyttöliittymätestausta. Klikkaa Test Request -painiketta, täytä julkaisutiedot ja sitten lähetä lähettääksesi pyynnön, kuten alla on esitetty:
Mukauta oletusHTTP-asiakas. C# Teamsille haluamme avata API-dokumentaatiorajapinnan, joka näyttää automaattisesti C# HttpClientin kutsukoodin. Jos et halua valita manuaalisesti joka kerta ensimmäisellä kerralla, konfiguroi seuraavasti:
Poista Ask AI -ominaisuus ja poista Ask AI Agent -painike. Tämä ominaisuus tuntuu hieman tarpeettomalta. Koodi on seuraava:
Kuten alla on esitetty:
Poiston jälkeen, kuten alla on esitetty:
Samoin poista MCP-toiminnallisuus käytöstä, koodaa seuraavasti:
Täydellinen kokoonpano on seuraava:
Lisää JWT-todennus ja kanna pyyntöotsikkoKantajamerkki
Lisää turvallisuusvaatimukset koko OpenAPI-dokumentaatioon, koodaa seuraavasti:
Kuten alla on esitetty:
OpenID Connect (OIDC):Hyperlinkin kirjautuminen on näkyvissä.
Viittaus:
Hyperlinkin kirjautuminen on näkyvissä.
Hyperlinkin kirjautuminen on näkyvissä. |