Merge pull request #772 from ZacharyZcR/fix/large-file-download-streaming

fix: use streaming download for large files in file manager
This commit is contained in:
ZacharyZcR
2026-05-18 04:36:25 +08:00
committed by GitHub
3 changed files with 73 additions and 31 deletions
+19
View File
@@ -2082,6 +2082,25 @@ export async function downloadSSHFile(
}
}
export async function downloadSSHFileStream(
sessionId: string,
filePath: string,
): Promise<void> {
const response = await fileManagerApi.post(
"/ssh/downloadFileStream",
{ sessionId, path: filePath },
{ responseType: "blob" },
);
const blob = response.data as Blob;
const fileName = filePath.split("/").pop() || "download";
const url = URL.createObjectURL(blob);
const a = document.createElement("a");
a.href = url;
a.download = fileName;
a.click();
URL.revokeObjectURL(url);
}
export async function createSSHFile(
sessionId: string,
path: string,