using File.Application.Features.Files.DTOs; using File.Application.Features.Files.Queries; using MediatR; namespace BuildFlow.Host.Endpoints.File.Files; /// /// Office/PDF 文档在线预览端点。GET /api/files/office-preview, /// 返回 KKFileView 预览地址,前端 window.open 打开即可渲染 Office 文档。 /// [Authorize] /// /// undefined /// public class GetOfficePreviewEndpoint(IMediator mediator) : Endpoint { public override void Configure() { Get("/files/office-preview"); } public override async Task HandleAsync(GetOfficePreviewRequest req, CancellationToken ct) { var result = await mediator.Send(new GetOfficePreviewQuery(req.ObjectKey), ct); await Send.OkAsync(result, ct); } }