Skip to content

fix: delegate object downloads to browser - #256

Merged
cxymds merged 1 commit into
mainfrom
cxymds/fix/browser-native-download
Oct 4, 2026
Merged

cxymds merged 1 commit into
mainfrom
cxymds/fix/browser-native-download

Conversation

@cxymds

@cxymds cxymds commented Oct 4, 2026

Copy link
Copy Markdown
Member

Summary

Object downloads currently fetch the complete response in JavaScript, convert it to a Blob, and only then hand it to the browser. This prevents the browser download manager from showing transfer progress and adds unnecessary client-side buffering.

This change delegates signed object URLs directly to the browser for:

  • object list downloads
  • object detail downloads
  • object view downloads
  • object version downloads

The existing signed Content-Disposition filename handling is preserved. The page keeps the URL preparation loading state and reports when the browser download has been started. Bulk ZIP downloads were already browser-managed and are unchanged.

Closes #247

Validation

  • pnpm install --frozen-lockfile
  • pnpm type-check
  • pnpm lint
  • pnpm format:check
  • pnpm test:run (614 tests)
  • git diff --check

Screenshots are not included because this is a browser download behavior change with no stable in-page visual state to capture; transfer progress is rendered by the browser's download manager.

@cxymds
cxymds merged commit 0bc339c into main Oct 4, 2026
6 checks passed
@cxymds
cxymds deleted the cxymds/fix/browser-native-download branch October 4, 2026 02:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

客户端的下载需要优化

1 participant