Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
YARP je navržena jako knihovna, která poskytuje základní funkce proxy serveru, které můžete přizpůsobit přidáním nebo nahrazením modulů. YarP je aktuálně k dispozici jako balíček NuGet a ukázky kódu. V budoucnu plánujeme poskytnout šablonu projektu a předem sestavený spustitelný soubor (.exe
).
YARP je implementovaný nad infrastrukturou .NET Core a je použitelný v systémech Windows, Linux nebo MacOS. Vývoj je možné provádět pomocí sady SDK a oblíbeného editoru, sady Microsoft Visual Studio nebo editoru Visual Studio Code.
YARP 2.3.0 podporuje .NET 8 nebo novější.
SDK pro .NET si můžete stáhnout z https://dotnet.microsoft.com/download/dotnet/.
Vytvoření nového projektu
Kompletní verzi projektu vytvořeného pomocí následujícího postupu najdete v YARP základní ukázka.
Začněte vytvořením prázdné aplikace ASP.NET Core pomocí příkazového řádku:
dotnet new web -n MyProxy
Alternativně můžete vytvořit novou webovou aplikaci ASP.NET Core v sadě Visual Studio 2022 a zvolit prázdnou šablonu projektu.
Přidání odkazu na balíček
Přidejte odkaz na balíček pro Yarp.ReverseProxy
verze 2.3.0 nebo novější.
dotnet add package Yarp.ReverseProxy
Poznámka
Pokyny k přidávání balíčků do aplikací .NET najdete v článcích pod Instalace a správa balíčků v Pracovním postupu spotřeby balíčků (dokumentace NuGet). Zkontrolujte správné verze balíčků v NuGet.org.
Přidání middlewaru YARP
Aktualizujte soubor Program
tak, aby používal middleware YARP:
var builder = WebApplication.CreateBuilder(args);
builder.Services.AddReverseProxy()
.LoadFromConfig(builder.Configuration.GetSection("ReverseProxy"));
var app = builder.Build();
app.MapReverseProxy();
app.Run();
Konfigurace
Konfigurace pro YARP je definována v souboru appsettings.json
. Další informace naleznete v dokumentaci YARP Konfigurační soubory.
Konfiguraci je možné zadat také prostřednictvím kódu programu. Další informace naleznete v tématu YARP Extensibility Configuration Providers.
Další informace o dostupných možnostech konfigurace najdete v tématu RouteConfig a ClusterConfig.
{
"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/"
}
}
}
}
}
}
Spusťte projekt
Při použití rozhraní příkazového řádku .NET použijte dotnet run
v adresáři ukázky nebo dotnet run --project <path to .csproj file>
.
V sadě Visual Studio spusťte aplikaci kliknutím na tlačítko Spustit .