Freigeben über


Erste Schritte mit YARP

YARP ist als Bibliothek konzipiert, die die Kernproxyfunktionalität bereitstellt, die Sie anpassen können, indem Sie Module hinzufügen oder ersetzen. YARP wird derzeit als NuGet-Paket und Codebeispiele bereitgestellt. Wir planen die Bereitstellung einer Projektvorlage und einer vordefinierten ausführbaren Datei (.exe) in Zukunft.

YARP wird auf .NET Core-Infrastruktur implementiert und kann unter Windows, Linux oder MacOS verwendet werden. Die Entwicklung kann mit dem SDK und Ihrem bevorzugten Editor erfolgen, Microsoft Visual Studio oder Visual Studio Code.

YARP 2.3.0 unterstützt .NET 8 oder höher.

Sie können das .NET SDK aus https://dotnet.microsoft.com/download/dotnet/herunterladen.

Erstellen eines neuen Projekts

Eine vollständige Version des Projekts, das mit den nachstehenden Schritten erstellt wurde, finden Sie unter Basic YARP Sample.

Erstellen Sie zunächst eine leere ASP.NET Core-Anwendung mithilfe der Befehlszeile:

dotnet new web -n MyProxy

Erstellen Sie alternativ eine neue ASP.NET Core-Webanwendung in Visual Studio 2022, und wählen Sie "Leer" für die Projektvorlage aus.

Fügen Sie den Paketverweis hinzu

Fügen Sie einen Paketverweis für Yarp.ReverseProxy, Version 2.3.0 oder höher, hinzu.

dotnet add package Yarp.ReverseProxy

Anmerkung

Eine Anleitung zum Hinzufügen von Paketen zu .NET-Anwendungen finden Sie in den Artikeln unter Pakete installieren und verwalten unter Workflow für die Paketnutzung (NuGet-Dokumentation). Überprüfen Sie unter NuGet.org, ob die richtige Paketversion verwendet wird.

Die YARP-Middleware hinzufügen

Aktualisieren Sie die Program Datei, um die YARP Middleware zu verwenden:

var builder = WebApplication.CreateBuilder(args);
builder.Services.AddReverseProxy()
    .LoadFromConfig(builder.Configuration.GetSection("ReverseProxy"));
var app = builder.Build();
app.MapReverseProxy();
app.Run();

Konfiguration

Die Konfiguration für YARP wird in der appsettings.json Datei definiert. Weitere Informationen finden Sie unter YARP-Konfigurationsdateien.

Die Konfiguration kann auch programmgesteuert bereitgestellt werden. Weitere Informationen finden Sie unter YARP-Erweiterbarkeit: Anbieter für Konfiguration.

Erfahren Sie mehr über die verfügbaren Konfigurationsoptionen, indem Sie sich RouteConfig und ClusterConfigansehen.

{
 "Logging": {
   "LogLevel": {
     "Default": "Information",
     "Microsoft": "Warning",
     "Microsoft.Hosting.Lifetime": "Information"
   }
 },
 "AllowedHosts": "*",
 "ReverseProxy": {
   "Routes": {
     "route1" : {
       "ClusterId": "cluster1",
       "Match": {
         "Path": "{**catch-all}"
       }
     }
   },
   "Clusters": {
     "cluster1": {
       "Destinations": {
         "destination1": {
           "Address": "https://example.com/"
         }
       }
     }
   }
 }
}

Projekt ausführen

Verwenden Sie die .NET CLI, indem Sie dotnet run im Verzeichnis des Beispiels oder dotnet run --project <path to .csproj file> ausführen.

Starten Sie die App in Visual Studio, indem Sie auf die Schaltfläche "Ausführen " klicken.