fix(remote download): improve file pre-upload validation (fix #2286)

This commit is contained in:
Aaron Liu
2025-04-24 15:26:58 +08:00
parent 224ac28ffe
commit 969e35192a
4 changed files with 76 additions and 26 deletions

View File

@@ -38,9 +38,15 @@ type (
OnUploadFailed(ctx context.Context, session *fs.UploadSession)
// Similar to CompleteUpload, but does not create actual uplaod session in storage.
PrepareUpload(ctx context.Context, req *fs.UploadRequest, opts ...fs.Option) (*fs.UploadSession, error)
// PreValidateUpload pre-validates an upload request.
PreValidateUpload(ctx context.Context, dst *fs.URI, files ...fs.PreValidateFile) error
}
)
func (m *manager) PreValidateUpload(ctx context.Context, dst *fs.URI, files ...fs.PreValidateFile) error {
return m.fs.PreValidateUpload(ctx, dst, files...)
}
func (m *manager) CreateUploadSession(ctx context.Context, req *fs.UploadRequest, opts ...fs.Option) (*fs.UploadCredential, error) {
o := newOption()
for _, opt := range opts {