2024-12-16 10:58:49 +08:00
|
|
|
// src/api/upload.js
|
|
|
|
|
import axios from '../utils/request';
|
2024-12-13 14:36:03 +08:00
|
|
|
|
2024-12-16 10:58:49 +08:00
|
|
|
/**
|
|
|
|
|
* 获取上传中的文件信息
|
|
|
|
|
* @param {string} fileMD5 - 文件的 MD5 值
|
|
|
|
|
* @returns {Promise}
|
|
|
|
|
*/
|
|
|
|
|
export const getUploadingFile = (fileMD5) => {
|
|
|
|
|
return axios.get(`/upload/getUploadingFile/${fileMD5}`);
|
2024-12-13 14:36:03 +08:00
|
|
|
};
|
|
|
|
|
|
2024-12-16 10:58:49 +08:00
|
|
|
/**
|
|
|
|
|
* 校验文件是否已经上传
|
|
|
|
|
* @param {string} md5 - 文件的 MD5 值
|
|
|
|
|
* @returns {Promise}
|
|
|
|
|
*/
|
|
|
|
|
export const checkFileUploadedByMd5 = (md5) => {
|
|
|
|
|
return axios.get('/upload/multipart/check', {
|
|
|
|
|
params: { md5 },
|
|
|
|
|
});
|
2024-12-13 14:36:03 +08:00
|
|
|
};
|
|
|
|
|
|
2024-12-16 10:58:49 +08:00
|
|
|
/**
|
|
|
|
|
* 初始化分片上传
|
|
|
|
|
* @param {Object} fileUploadInfo - 文件上传信息
|
|
|
|
|
* @returns {Promise}
|
|
|
|
|
*/
|
|
|
|
|
export const initMultiPartUpload = (fileUploadInfo) => {
|
|
|
|
|
return axios.post('/upload/multipart/init', fileUploadInfo);
|
|
|
|
|
};
|
2024-12-13 14:36:03 +08:00
|
|
|
|
2024-12-16 10:58:49 +08:00
|
|
|
/**
|
|
|
|
|
* 完成分片上传
|
|
|
|
|
* @param {Object} fileUploadInfo - 文件上传信息
|
|
|
|
|
* @returns {Promise}
|
|
|
|
|
*/
|
|
|
|
|
export const completeMultiPartUpload = (fileUploadInfo) => {
|
|
|
|
|
return axios.post('/upload/multipart/merge', fileUploadInfo);
|
2024-12-13 14:36:03 +08:00
|
|
|
};
|
|
|
|
|
|
2024-12-16 10:58:49 +08:00
|
|
|
/**
|
|
|
|
|
* 上传截图
|
|
|
|
|
* @param {FormData} formData - 包含截图文件的 FormData
|
|
|
|
|
* @param {string} bucketName - Bucket 名称
|
|
|
|
|
* @returns {Promise}
|
|
|
|
|
*/
|
|
|
|
|
export const uploadScreenshot = (formData, bucketName) => {
|
|
|
|
|
return axios.post('/upload/multipart/uploadScreenshot', formData, {
|
|
|
|
|
params: { bucketName },
|
|
|
|
|
headers: {
|
|
|
|
|
'Content-Type': 'multipart/form-data',
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
};
|
2024-12-13 14:36:03 +08:00
|
|
|
|
2024-12-16 10:58:49 +08:00
|
|
|
/**
|
|
|
|
|
* 创建 Bucket
|
|
|
|
|
* @param {string} bucketName - Bucket 名称
|
|
|
|
|
* @returns {Promise}
|
|
|
|
|
*/
|
|
|
|
|
export const createBucket = (bucketName) => {
|
|
|
|
|
return axios.post('/upload/createBucket', null, {
|
|
|
|
|
params: { bucketName },
|
|
|
|
|
});
|
|
|
|
|
};
|