第一次上传

This commit is contained in:
xxk
2026-06-11 10:31:24 +08:00
commit cfef094568
1523 changed files with 210650 additions and 0 deletions
+63
View File
@@ -0,0 +1,63 @@
import request from "@/utils/request";
import type { FileInfo } from "./types";
const FileAPI = {
/** 上传文件 (传入 FormData,上传进度回调) */
upload(formData: FormData, onProgress?: (percent: number) => void) {
return request<any, FileInfo>({
url: "/api/v1/files",
method: "post",
data: formData,
headers: { "Content-Type": "multipart/form-data" },
onUploadProgress: (progressEvent) => {
if (progressEvent.total) {
const percent = Math.round((progressEvent.loaded * 100) / progressEvent.total);
onProgress?.(percent);
}
},
});
},
/** 上传文件(传入 File */
uploadFile(file: File) {
const formData = new FormData();
formData.append("file", file);
return request<any, FileInfo>({
url: "/api/v1/files",
method: "post",
data: formData,
headers: { "Content-Type": "multipart/form-data" },
});
},
/** 删除文件 */
delete(filePath?: string) {
return request({
url: "/api/v1/files",
method: "delete",
params: { filePath },
});
},
/** 下载文件 */
download(url: string, fileName?: string) {
return request({
url,
method: "get",
responseType: "blob",
}).then((res) => {
const blob = new Blob([res.data]);
const a = document.createElement("a");
const urlObject = window.URL.createObjectURL(blob);
a.href = urlObject;
a.download = fileName || "下载文件";
a.click();
window.URL.revokeObjectURL(urlObject);
});
},
};
export default FileAPI;
// 重导出类型
export * from "./types";