Trending.cs 746 B

1234567891011121314151617181920212223
  1. using Application.Abstractions.Messaging;
  2. using Web.Api.Common;
  3. namespace Web.Api.Endpoints.Forum.StockBoard;
  4. /// <summary>종목 트렌딩 랭킹 — GET /api/stock-boards/trending?count= (익명, Redis 10분 캐시).</summary>
  5. internal sealed class Trending : IEndpoint
  6. {
  7. public void MapEndpoint(IEndpointRouteBuilder app)
  8. {
  9. app.MapGet("api/stock-boards/trending", async (
  10. ISender sender,
  11. int count = 20,
  12. CancellationToken ct = default
  13. ) => {
  14. var result = await sender.Send(new Application.Features.Api.Forum.StockBoard.Trending.Query(count), ct);
  15. return ApiResponse.Ok(result);
  16. })
  17. .WithTags("StockBoard")
  18. .AllowAnonymous();
  19. }
  20. }