Files
knowai/api/modules/user.ts
tobegold574 6a81b7bb13
Some checks reported errors
continuous-integration/drone/push Build was killed
feat(image): 新建 knowai-core:1.0.0 镜像并完成推送
- 搭建 api、auth、utils 等逻辑模块
- 通过 tsc、eslint、vitest 测试验证

BREAKING CHANGE: 新镜像分支
2025-11-10 20:20:25 +08:00

52 lines
1.4 KiB
TypeScript

import type { ApiClient } from '../types';
import type {
LoginRequest,
LoginResponse,
RegisterRequest,
RegisterResponse,
RefreshTokenRequest,
RefreshTokenResponse,
UserProfileUpdateRequest,
UserProfileUpdateResponse,
UserFollowRequest,
UserFollowResponse
} from '@/types/user';
// 用户API服务工厂函数
export const userApi = (client: ApiClient) => ({
// 用户登录
login: (data: LoginRequest): Promise<LoginResponse> => {
return client.post('/auth/login', data);
},
// 用户注册
register: (data: RegisterRequest): Promise<RegisterResponse> => {
return client.post('/auth/register', data);
},
// 刷新令牌
refreshToken: (data: RefreshTokenRequest): Promise<RefreshTokenResponse> => {
return client.post('/auth/refresh', data);
},
// 获取用户档案
getProfile: (): Promise<UserProfileUpdateResponse> => {
return client.get('/user/profile');
},
// 更新用户档案
updateProfile: (data: UserProfileUpdateRequest): Promise<UserProfileUpdateResponse> => {
return client.put('/user/profile', data);
},
// 关注用户
followUser: ({ userId }: UserFollowRequest): Promise<UserFollowResponse> => {
return client.put(`/user/follow/${userId}`);
},
// 取消关注用户
unfollowUser: ({ userId }: UserFollowRequest): Promise<UserFollowResponse> => {
return client.delete(`/user/follow/${userId}`);
}
});