Files
QMDSearch/frontend/src/api/auth.js
T
kplam 6c6f690788 chore: 完成全量功能迭代与部署准备
- 移除冗余依赖包
- 新增账号禁用校验与用户管理能力
- 新增文档下载与管理页面文件展示
- 新增API文档页面与用户管理前端页面
- 重构时区处理与docker-compose部署配置
- 完善测试用例与项目文档
2026-08-01 00:02:42 +08:00

66 lines
1.8 KiB
JavaScript

import http from './client'
/**
* 用户名密码登录
* @param {string} username
* @param {string} password
* @returns {Promise<{access_token:string, expires_in:number, user:{username:string, role:string, created_at:string}}>}
*/
export function login(username, password) {
return http.post('/api/v1/auth/login', { username, password })
}
/**
* 获取当前登录用户信息
* @returns {Promise<{username:string, role:string, created_at:string}>}
*/
export function me() {
return http.get('/api/v1/auth/me')
}
/**
* 列出全部用户(admin 专用)
* @returns {Promise<Array<{username:string, role:string, enabled:boolean, must_change_password:boolean, created_at:string}>>}
*/
export function listUsers() {
return http.get('/api/v1/auth/users')
}
/**
* 创建用户(admin 专用)
* @param {string} username
* @param {string} password
* @param {'admin'|'user'} [role='user']
*/
export function createUser(username, password, role = 'user') {
return http.post('/api/v1/auth/users', { username, password, role })
}
/**
* 更新用户角色 / 启用状态(admin 专用,至少传一项)
* @param {string} username
* @param {{ role?: 'admin'|'user', enabled?: boolean }} payload
*/
export function updateUser(username, payload) {
return http.patch(`/api/v1/auth/users/${encodeURIComponent(username)}`, payload)
}
/**
* 重置指定用户密码(admin 专用)
* @param {string} username
* @param {string} newPassword
*/
export function resetPassword(username, newPassword) {
return http.post(`/api/v1/auth/users/${encodeURIComponent(username)}/password`, {
new_password: newPassword
})
}
/**
* 删除用户(admin 专用)
* @param {string} username
*/
export function deleteUser(username) {
return http.delete(`/api/v1/auth/users/${encodeURIComponent(username)}`)
}