docs: update IM login lock error prompt copy and description

修正登录锁定错误提示文案,补充完整的时长格式化规则,更新示例文案匹配新规则
This commit is contained in:
Austin
2026-09-21 13:57:53 +08:00
parent 6f331a07fc
commit 8fad32e396
@@ -28,7 +28,7 @@
| 场景 | code | text | params |
|---|---|---|---|
| 密码错误,未达阈值 | 401 | `authentication failed` | — |
| 密码错误达到阈值,触发锁定 | **429** | `登录错误次数过多,账号已锁定,请 N 分钟后再试` | `{"what":"auth","retry_after_seconds":60}` |
| 密码错误达到阈值,触发锁定 | **429** | `登录错误次数过多,账号已锁定,请 N 后再试`(N 按剩余时长显示:不足 1 分钟为「1 分钟以内」,不足 1 小时为「1 小时以内」,不足 1 天为「N 小时」,其他为「N 天」) | `{"what":"auth","retry_after_seconds":60}` |
| 锁定期间再次登录 | **429** | 同上(N 随剩余时间递减) | 同上 |
| 登录成功 | 200 | `ok` | 正常 auth 信息 |
@@ -40,13 +40,13 @@
// 第 2 次错误密码(达到阈值)
{"ctrl": {"id": "t1", "code": 429,
"text": "登录错误次数过多,账号已锁定,请 1 分钟内再试",
"text": "登录错误次数过多,账号已锁定,请 1 分钟以内再试",
"params": {"what": "auth", "retry_after_seconds": 60},
"ts": "..."}}
// 锁定期间(约 12 秒后)正确密码登录,同样被拒绝且剩余时间递减
{"ctrl": {"id": "t1", "code": 429,
"text": "登录错误次数过多,账号已锁定,请 1 分钟内再试",
"text": "登录错误次数过多,账号已锁定,请 1 分钟以内再试",
"params": {"what": "auth", "retry_after_seconds": 48},
"ts": "..."}}
```
@@ -56,7 +56,7 @@
| 字段 | 类型 | 说明 |
|---|---|---|
| `code` | int | HTTP 语义状态码。**429 = 账号锁定**,与 401(密码错误)区分 |
| `text` | string | **面向用户展示的完整中文文案,含剩余分钟数(向下取整);不足 1 分钟显示「1 分钟内再试」**。客户端直接展示即可,无需自行拼接时间 |
| `text` | string | **面向用户展示的完整中文文案,剩余时长自动格式化:不足 1 分钟显示「1 分钟以内」,不足 1 小时显示「1 小时以内」,不足 1 天按小时(向下取整),其他按天(向下取整)**。客户端直接展示即可,无需自行拼接时间 |
| `params.retry_after_seconds` | int | 剩余锁定秒数(向上取整),可用于 UI 倒计时/禁用登录按钮 |
| `params.what` | string | 固定 `auth`,表示错误发生在认证环节 |