File size: 1,401 Bytes
9de72d6 f4d13e9 9de72d6 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
import axios from 'axios';
const BASE_URL = "https://joey7938-stt.hf.space"
// 定义响应类型
interface FileNameListResponse {
files: string[];
}
interface FileUploadResponse {
message: string;
}
interface FileDeleteResponse {
message: string;
}
// 获取文件名列表
async function getFileNameList(): Promise<FileNameListResponse> {
try {
const response = await axios.get<FileNameListResponse>(`${BASE_URL}/file/getFileNameList`);
return response.data;
} catch (error: any) {
throw new Error(error.response?.data?.error);
}
}
// 上传文件
async function uploadFile(buffer: Buffer, fileName: string): Promise<FileUploadResponse> {
try {
const response = await axios.post<FileUploadResponse>(`${BASE_URL}/file/uploadFile`, buffer, {
headers: {
'Content-Type': 'application/octet-stream',
'Content-Disposition': `attachment; filename=${fileName}`,
},
});
return response.data;
} catch (error: any) {
throw new Error(error.response?.data?.error);
}
}
// 删除文件
async function deleteFile(fileName: string): Promise<FileDeleteResponse> {
try {
const response = await axios.post<FileDeleteResponse>(`${BASE_URL}/file/deleteFile`, { fileName });
return response.data;
} catch (error: any) {
throw new Error(error.response?.data?.error);
}
}
export { getFileNameList, uploadFile, deleteFile };
|