- 移除AbortMultipartCommand中的BucketName参数 - 移除CompleteMultipartCommand中的BucketName参数 - 移除DeleteFileCommand中的BucketName参数 - 移除DownloadFileQuery中的BucketName参数 - 移除GetFileContentQuery中的BucketName参数 - 移除GetFilePreviewQuery中的BucketName参数 - 移除GetOfficePreviewQuery中的BucketName参数 - 移除InitMultipartCommand中的BucketName参数 - 在各处理器中注入IBucketResolver并获取默认桶 - 更新所有相关端点和请求模型移除bucket参数 - 修改测试代码适配参数变更 - 添加IM离线消息到平台通知中心的跨模块集成实现
30 lines
897 B
C#
30 lines
897 B
C#
using File.Application.Features.Multipart.Commands;
|
|
using File.Application.Features.Multipart.DTOs;
|
|
using MediatR;
|
|
|
|
namespace BuildFlow.Host.Endpoints.file.Multipart;
|
|
|
|
|
|
/// <summary>上传单个分片端点。PUT /api/files/multipart/part。</summary>
|
|
[Authorize]
|
|
/// <summary>
|
|
/// undefined
|
|
/// </summary>
|
|
public class UploadPartEndpoint(IMediator mediator) : Endpoint<UploadPartRequest, UploadPartResult>
|
|
{
|
|
public override void Configure()
|
|
{
|
|
Put("/files/multipart/part");
|
|
Permissions("file:upload");
|
|
AllowFileUploads();
|
|
}
|
|
|
|
public override async Task HandleAsync(UploadPartRequest req, CancellationToken ct)
|
|
{
|
|
await using var stream = req.File.OpenReadStream();
|
|
var result = await mediator.Send(new UploadPartCommand(req.ObjectKey,
|
|
req.UploadId, req.PartNumber, stream), ct);
|
|
await Send.OkAsync(result, ct);
|
|
}
|
|
}
|