如何在Aspire服务发现中获取注入的URL

问题描述 投票:0回答:1

我目前有两个项目:

  1. API后端
  2. Angular 前端拥有自己的最小后端。

前端项目有 2 个目的:

  1. 服务于角度应用程序
  2. 提供一个端点
    /settings
    ,Angular 应用程序调用该端点来发现它可以调用的 API。

/settings
端点返回的数据是从绑定到
IOptions<ClientSettings>
的一个配置节读取的。
ClientSettings
包含 API 列表及其 URL。

我想将 Aspire 添加到此解决方案中。

如何确保我的

/settings
端点返回来自 Aspire 服务发现的 URL?

我的猜测是,Aspire 正在注入环境变量,然后在使用

HttpClient
时以某种方式连接这些环境变量。不过,我在这里没有使用
HttpClient
,我只需要更改端点返回的内容。

c# angular asp.net-core .net-8.0 dotnet-aspire
1个回答
0
投票

当您将

builder.AddServiceDefaults();
添加到在
ServiceDefaults
项目上实现的应用程序时,它会添加此代码
 builder.Services.AddServiceDiscovery()

服务发现从应用程序设置的“服务”部分读取您的网址

所以用这个:

builder.Configuration.GetSection("Services").GetChildren();

© www.soinside.com 2019 - 2024. All rights reserved.