Files
MiragenFlow/web/src/services/api/auth.ts
T
HouYunFei b2cae2471d feat(admin): 添加用户管理和Linux.do登录功能
- 新增AdminUser类型定义及用户管理API接口
- 实现用户列表查询、保存和删除功能
- 添加Linux.do第三方登录支持
- 集成Linux.do OAuth认证流程
- 在系统设置中添加Linux.do登录配置选项
- 实现算力点余额调整记录功能
- 优化搜索组件关键词状态管理
- 更新数据库迁移添加credit_logs表
- 完善用户状态和信用等级验证逻辑
2026-05-25 11:21:09 +08:00

39 lines
884 B
TypeScript

import { apiGet, apiPost } from "@/services/api/request";
export const AUTH_TOKEN_KEY = "infinite-canvas-auth-token-v1";
export type UserRole = "guest" | "user" | "admin";
export type AuthUser = {
id: string;
username: string;
displayName: string;
avatarUrl: string;
role: UserRole;
credits: number;
createdAt: string;
updatedAt: string;
};
export type AuthSession = {
token: string;
user: AuthUser;
};
export type AuthPayload = {
username: string;
password: string;
};
export async function login(payload: AuthPayload) {
return apiPost<AuthSession>("/api/auth/login", payload);
}
export async function register(payload: AuthPayload) {
return apiPost<AuthSession>("/api/auth/register", payload);
}
export async function fetchCurrentUser(token?: string) {
return apiGet<AuthUser>("/api/auth/me", undefined, token);
}