Shop Password Mock API
源码:
web/src/mock/modules/shop/password.ts
接口列表
| 方法 | 路径 | 说明 |
|---|---|---|
| POST | /api/v1/shop/password/verify | 验证商店密码 |
| PUT | /api/v1/shop/password | 设置/修改商店密码 |
请求参数
POST /api/v1/shop/password/verify
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| password | string | 是 | 待验证的密码 |
PUT /api/v1/shop/password
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| oldPassword | string | 否 | 旧密码(修改密码时需验证) |
| newPassword | string | 是 | 新密码(至少 4 位) |
业务逻辑
密码验证
- 未设置密码时:直接通过(
verified: true) - 密码正确时:重置尝试次数
- 密码错误时:尝试次数 +1
- 连续 5 次错误:锁定 30 分钟(HTTP 423)
密码设置
- 首次设置:无需旧密码
- 修改密码:需验证旧密码
- 新密码至少 4 位
- 设置成功后重置尝试次数和锁定状态
响应格式
POST /api/v1/shop/password/verify
成功:
json
{ "code": 0, "msg": "ok", "data": { "verified": true } }错误:
- 密码错误:
{ "code": 400, "msg": "密码错误,剩余 4 次尝试机会", "data": null } - 已锁定:
{ "code": 423, "msg": "密码已锁定,25 分钟后重试", "data": null }
PUT /api/v1/shop/password
成功:
json
{ "code": 0, "msg": "密码设置成功", "data": null }错误:
- 旧密码错误:
{ "code": 400, "msg": "旧密码错误", "data": null } - 新密码太短:
{ "code": 400, "msg": "新密码至少需要 4 位", "data": null }
被哪个 Store 调用
- ShopStore (
web/src/stores/shop.ts)verifyPassword(pwd)→POST /api/v1/shop/password/verifysetPassword(newPwd, oldPwd)→PUT /api/v1/shop/password