Krav: Scalar er ret kraftfuldt og kan automatisk generere HTTP-kaldskode på forskellige sprog ud fra API-dokumentation, ved at bruge Scalar i stedet for Swagger til at vise API-dokumentation.
Efter udgivelsen af .NET 9 annoncerede ASP.NET det officielle Core-team, at Swashbuckle.AspNetCore (et projekt, der leverer Swagger-værktøjet til ASP.NET Core API) ville blive fjernet fra ASP.NET Core Web API-skabelonen. Det betyder, at når vi fremover opretter Web API-projekter, vil Swagger API-dokumentation ikke længere automatisk blive genereret. Så i dag skal vi prøve at bruge Scalar til interaktiv API-dokumentation i vores EasySQLite .NET 9-projekt.
Sammenkæde:Hyperlink-login er synlig.
Årsagerne til Swaggers fjernelse kan opsummeres således:
- Swashbuckle dårlig vedligeholdelse: Swashbuckle-projektet vedligeholdes ikke længere aktivt af fællesskabsejere, mange problemer er stadig uløste, og en officiel version, der er kompatibel med .NET 8, er ikke blevet udgivet.
- Med fokus på Microsoft.AspNetCore.OpenApi: ASP.NET Core-teamet vil forbedre Microsoft.AspNetCore.OpenApis kapaciteter for at erstatte Swashbuckle og muliggøre generering af OpenAPI-dokumentation.
- Eksisterende alternativer: Udover Swashbuckle understøtter andre projekter som NSwag OpenAPI-dokumentationsgenerering og klient/server-kodegenerering, hvilket giver udviklere mulighed for at vælge den passende løsning baseret på projektets behov.
- Forbedret indbygget API-understøttelse: Fra ASP.NET Core 3.1 har frameworket leveret metadata-understøttelse såsom ApiExplorer. Kombineret med Visual Studio og Visual Studio Codes indbyggede understøttelse af .http-filer er API-test- og fejlfindingsoplevelsen endnu bedre.
- Promovering af OpenAPI som kernekomponent: ASP.NET Core-team planlægger yderligere at forbedre OpenAPI-integrationen i .NET 9 og gøre det til en kernekomponent med fokus på at generere JSON-formateret OpenAPI-dokumentation.
Skalar
Scalar er et kraftfuldt og brugervenligt API-klient- og dokumentationsgenereringsværktøj, der er velegnet til API-projekter i alle størrelser og understøtter flere programmeringssprog og platforme.
Open source-adresse:Hyperlink-login er synlig.
ASP.NET Core integrerer Scalar
Integreret dokumentation:Hyperlink-login er synlig.
Opret et ASP.NET Core 9-projekt, refereret som følger:
Tilføj services og skalar middleware i Program.cs, med koden som følger:
Rediger WeatherForecastController.cs controller, kode som følger:
Start projektet, åbn din browser, og besøg:http://localhost:5088/api-docs, som vist i figuren nedenfor:
Du kan vælge at generere specifik kaldkode til HTTP-biblioteker i forskellige sprog. Tag C# HttpClient-biblioteket som eksempel, er den genererede kode som følger:
Den understøtter også online interfacetest. Klik på knappen Testanmodning, udfyld opslagsdataene, og klik derefter på send for at sende anmodningen, som vist nedenfor:
Tilpas standard HTTP-klienten. For C#-teams vil vi åbne API-dokumentationsgrænsefladen, som automatisk viser C# HttpClient-kaldskoden. Hvis du ikke vil vælge manuelt hver første gang, kan du konfigurere som følger:
Slet funktionen Ask AI og fjern knappen Ask AI Agent. Denne funktion føles en smule overflødig. Koden er som følger:
Som vist nedenfor:
Efter sletning, som vist nedenfor:
Tilsvarende deaktiveres MCP-funktionaliteten, kode som følger:
Den komplette konfiguration er som følger:
Tilføj JWT-autentificering og bær anmodningsheaderenBærerbrik
Tilføj sikkerhedskrav til hele OpenAPI-dokumentationen, kode som følger:
Som vist nedenfor:
OpenID Connect (OIDC):Hyperlink-login er synlig.
Henvisning:
Hyperlink-login er synlig.
Hyperlink-login er synlig. |