27 lines
1.2 KiB
C#
27 lines
1.2 KiB
C#
|
var builder = WebApplication.CreateBuilder(args);
|
|||
|
builder.Services.AddHttpClient(); // Добавляем библиотеку по работе с HTTP.
|
|||
|
var app = builder.Build();
|
|||
|
|
|||
|
// Да, по заданию надо будет запрашивать метод /{uuid}. Тут запрашивается список.
|
|||
|
app.MapGet("/", async (IHttpClientFactory httpClientFactory) =>
|
|||
|
{
|
|||
|
var remoteHost = "http://localhost:5158"; // Адрес, по которому развёрнут микросервис с задачами. В docker compose тут будет имя service.
|
|||
|
var client = httpClientFactory.CreateClient();
|
|||
|
var response = await client.GetFromJsonAsync<List<TaskEntityDto>>(remoteHost);
|
|||
|
if (response == null)
|
|||
|
return Results.BadRequest();
|
|||
|
return Results.Ok($"Соседний микросервис отдал следующие задачи: {string.Join(", ", response.Select(i => i.Subject))}");
|
|||
|
});
|
|||
|
|
|||
|
app.Run();
|
|||
|
|
|||
|
/// <summary>
|
|||
|
/// DTO-класс для описания сущности из другого микросервиса.
|
|||
|
/// </summary>
|
|||
|
public class TaskEntityDto
|
|||
|
{
|
|||
|
public Guid Uuid { get; set; }
|
|||
|
public string Subject { get; set; } = string.Empty;
|
|||
|
public bool IsCompleted { get; set; }
|
|||
|
}
|