Axios-based API client with full TypeScript support
支持服务器中转上传和预签名 URL 客户端直传两种方式,兼容 Cloudflare R2 / AWS S3
支持 JPG, PNG, GIF, WebP 等图片格式
import { appFileService } from '@/lib/api/app-file';
// 通过服务器中转上传
const result = await appFileService.upload(
file, // File 对象
'image', // 分类: general | image | avatar | document
(percent) => console.log(`进度: ${percent}%`),
);
console.log(result.url); // 文件访问 URL
console.log(result.md5); // 文件 MD5
console.log(result.size); // 文件大小(字节)使用 React Query + Axios,支持自动缓存、重试、错误处理
完整的 API 使用指南请查看项目根目录的 API_GUIDE.md 文件
import { clientGet } from '@/lib/api';
const response = await clientGet<User[]>('/users');import { serverGet } from '@/lib/api';
const response = await serverGet<User[]>('/users');import { userService } from '@/lib/api/services';
const response = await userService.getUsers();