| 项 | 说明 |
|---|---|
| Base Path | /app/auth |
| 鉴权 | 匿名访问(无需 Token);类上 @Anonymous,由 Spring Security 放行 |
| 用途 | 登录页「注册」:校验用户名是否可用、提交注册 |
| 用户表 | sys_user;角色关联 sys_user_role |
| 默认角色 | sys_role.role_id = **2**(普通角色,role_key=common) |
| 默认部门 | dept_id = 100(与若依初始化根部门一致) |
注册成功后,使用既有接口 POST /login(用户名 + 密码,及验证码若开启)登录。
GET /app/auth/usernameAvailable
| 参数 | 位置 | 必填 | 说明 |
|---|---|---|---|
userName |
Query | 是 | 拟注册的登录名(2~20 字符,与若依账户规则一致) |
示例
GET /app/auth/usernameAvailable?userName=herder01
统一 AjaxResult:code、msg、data。
| 字段 | 类型 | 说明 |
|---|---|---|
data.userName |
string | 回显(trim 后) |
data.available |
boolean | true 可用;false 已被占用 |
成功示例
{
"code": 200,
"msg": "操作成功",
"data": {
"userName": "herder01",
"available": true
}
}
业务失败(如用户名为空、长度不符):code 非 200,msg 为错误说明。
POST /app/auth/register
Content-Type: application/json
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
nickName |
string | 是 | 用户昵称,1~30 字符 |
userName |
string | 是 | 登录用户名,2~20 字符 |
password |
string | 是 | 登录密码,5~20 字符(入库前 BCrypt 加密) |
示例
{
"nickName": "牧民甲",
"userName": "herder01",
"password": "abc12345"
}
| 字段 | 类型 | 说明 |
|---|---|---|
data.userId |
long | 新用户主键 |
data.userName |
string | 登录名 |
成功示例
{
"code": 200,
"msg": "注册成功",
"data": {
"userId": 100,
"userName": "herder01"
}
}
常见失败 msg
| 场景 | 说明 |
|---|---|
| 用户名已存在 | 与 usernameAvailable 为 false 时注册结果一致 |
| 参数校验失败 | 昵称/用户名/密码长度不符 |
| 默认角色不存在 | 库中无 role_id=2 时需运维补数据 |
注册页流程建议
available=false 时提示「用户名已被占用」。POST /login。请求基址
ruoyi-ui-app 一致:config.js 中 baseUrl + 上表路径(注意网关 context-path)。请求头
Authorization。与 PC 端 /register 区别
sys.account.registerUser 及图形验证码;/app/auth/**,固定绑定角色 2,无验证码(按产品要求)。登录
@/api/login.js 中 POST /login。// 校验用户名
uni.request({
url: baseUrl + '/app/auth/usernameAvailable',
method: 'GET',
data: { userName: 'herder01' },
success(res) {
const ok = res.data && res.data.code === 200 && res.data.data.available
}
})
// 注册
uni.request({
url: baseUrl + '/app/auth/register',
method: 'POST',
header: { 'Content-Type': 'application/json' },
data: {
nickName: '牧民甲',
userName: 'herder01',
password: 'abc12345'
},
success(res) {
if (res.data && res.data.code === 200) {
// 跳转登录
}
}
})
| 类 | 说明 |
|---|---|
AppAuthController |
/app/auth 接口 |
IAppUserRegisterService |
注册与校验 |
AppUserRegisterRules |
DEFAULT_ROLE_ID=2、DEFAULT_DEPT_ID=100 |
| 版本 | 日期 | 说明 |
|---|---|---|
| 1.0 | 2026-05-25 | 初版:匿名注册、用户名可用性校验、默认角色 2 |