Microsoft.Extensions.ServiceDiscovery.Yarp 8.1.0

前缀已预留
dotnet add package Microsoft.Extensions.ServiceDiscovery.Yarp --version 8.1.0                
NuGet\Install-Package Microsoft.Extensions.ServiceDiscovery.Yarp -Version 8.1.0                
此命令旨在在Visual Studio的包管理器控制台中使用,因为它使用NuGet模块的Install-Package版本。
<PackageReference Include="Microsoft.Extensions.ServiceDiscovery.Yarp" Version="8.1.0" />                
对于支持包引用的项目,将此XML节点复制到项目文件中以引用该包。
paket add Microsoft.Extensions.ServiceDiscovery.Yarp --version 8.1.0                
#r "nuget: Microsoft.Extensions.ServiceDiscovery.Yarp, 8.1.0"                
#r指令可以在F# Interactive和Polyglot Notebooks中使用。将此复制到交互式工具或脚本源代码中,以引用该包。
// Install Microsoft.Extensions.ServiceDiscovery.Yarp as a Cake Addin
#addin nuget:?package=Microsoft.Extensions.ServiceDiscovery.Yarp&version=8.1.0

// Install Microsoft.Extensions.ServiceDiscovery.Yarp as a Cake Tool
#tool nuget:?package=Microsoft.Extensions.ServiceDiscovery.Yarp&version=8.1.0                

Microsoft.Extensions.ServiceDiscovery.Yarp

通过实现YARP目的地解析器Microsoft.Extensions.ServiceDiscovery.Yarp库增加了对解析YARP集群端点的支持。

用法

使用服务发现解析YARP集群目的地

IReverseProxyBuilder.AddServiceDiscoveryDestinationResolver()扩展方法配置了YARP目的地解析器。要使用此方法,您还必须根据YARP文档中的说明配置YARP本身,并且您必须通过Microsoft.Extensions.ServiceDiscovery库配置.NET服务发现。

使用服务发现转发HTTP请求

YARP 支持使用 IHttpForwarder 接口进行特定请求的 直接转发。这也可以利用 Microsoft.Extensions.ServiceDiscovery 库进行服务发现。要使用 YARP 直接转发利用服务发现,请使用 IServiceCollection.AddHttpForwarderWithServiceDiscovery 方法。

例如,考虑以下 .NET Aspire 应用程序

var builder = WebApplication.CreateBuilder(args);

// Configure service discovery
builder.Services.AddServiceDiscovery();

// Add YARP Direct Forwarding with Service Discovery support
builder.Services.AddHttpForwarderWithServiceDiscovery();

// ... other configuration ...

var app = builder.Build();

// ... other configuration ...

// Map a Direct Forwarder which forwards requests to the resolved "catalogservice" endpoints
app.MapForwarder("/catalog/images/{id}", "http://catalogservice", "/api/v1/catalog/items/{id}/image");

app.Run();

在上面的示例中,YARP 直接转发器将使用服务发现解析 catalogservice,并将发送到 /catalog/images/{id} 端点的请求转发到解析后的端点的目标路径。

反馈 & 贡献

https://github.com/dotnet/aspire

产品 兼容的和额外的目标框架版本。
.NET net8.0 兼容。 net8.0-android 已计算。 net8.0-browser 已计算。 net8.0-ios 已计算。 net8.0-maccatalyst 已计算。 net8.0-macos 已计算。 net8.0-tvos 已计算。 net8.0-windows 已计算。
兼容的目标框架
包含的目标框架(在包中)
更多关于 目标框架.NET 标准 的信息。

NuGet 包 (1)

显示依赖于 Microsoft.Extensions.ServiceDiscovery.Yarp 的顶级 1 个 NuGet 包

下载
Aspirant.Hosting.Yarp

A custom YARP ingress resource for .NET Aspire App Host projects.

GitHub 仓库 (3)

显示依赖于 Microsoft.Extensions.ServiceDiscovery.Yarp 的顶级 3 个流行 GitHub 仓库

仓库 星标
dotnet/eShop
A reference .NET application implementing an eCommerce site
dotnet/aspire-samples
Azure-Samples/eShopOnAzure
A variant of https://github.com/dotnet/eShop that uses Azure services
版本 下载 最后更新日期
8.1.0 4,433 7/23/2024
8.0.2 6,923 6/28/2024
8.0.1 13,943 5/21/2024
8.0.0 4,128 5/21/2024
8.0.0-preview.7.24251.11 5,989 5/7/2024
8.0.0-preview.6.24214.1 6,512 4/23/2024
8.0.0-preview.5.24201.12 5,630 4/9/2024
8.0.0-preview.4.24156.9 7,738 3/12/2024
8.0.0-preview.3.24105.21 5,605 2/13/2024
8.0.0-preview.2.23619.3 8,180 12/20/2023
8.0.0-preview.1.23557.2 8,111 11/14/2023