获取会话历史
GET
/web/v1/system/security/sessions/history JWT获取已认证用户的分页登录历史记录。支持时间范围筛选。结果按登录时间降序排列(最新优先)。
鉴权
Auth Chain: WEB Chain — 需要
Authorization: Bearer <jwt>以下请求头由系统自动注入(前端无需处理):X-PORTAL-ACCESS-CODE(Nginx),X-Request-Id(Gateway)
请求参数
| Name | Type | Required | In | Description |
|---|---|---|---|---|
page | Integer | Optional | query | 页码,从 0 开始(默认: 0) |
size | Integer | Optional | query | 每页大小(默认: 20,最大: 100) |
startTime | String | Optional | query | 筛选开始时间(ISO 8601 日期时间) |
endTime | String | Optional | query | 筛选结束时间(ISO 8601 日期时间) |
请求示例
无需请求体。参数通过查询字符串传递。
成功响应
成功 200
{
"version": "1.3.0",
"timestamp": 1709337600000,
"success": true,
"code": "2000",
"message": "SUCCESS",
"data": {
"content": [
{
"bizId": "LH_001",
"loginTime": "2026-03-23T12:00:00Z",
"clientIp": "127.0.0.1",
"userAgent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64)",
"loginResult": 1,
"failureReason": null
},
{
"bizId": "LH_002",
"loginTime": "2026-03-23T11:30:00Z",
"clientIp": "127.0.0.2",
"userAgent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)",
"loginResult": 2,
"failureReason": "INVALID_CREDENTIALS"
}
],
"totalElements": 2,
"totalPages": 1,
"number": 0,
"size": 20
}
}| 字段 | 类型 | 说明 |
|---|---|---|
bizId | string | 登录历史记录业务 ID |
loginTime | string (ISO 8601) | 登录尝试时间 |
clientIp | string | 客户端 IP 地址 |
userAgent | string | User-Agent 字符串 |
loginResult | integer | 登录结果:1 = 成功,2 = 失败 |
failureReason | string 或 null | 登录失败原因(如 "INVALID_CREDENTIALS"),成功时为 null |
分页包装字段:totalElements(总记录数)、totalPages(总页数)、number(当前页码)、size(每页大小)。
错误响应
未授权 401
{
"success": false,
"code": "4010",
"message": "Invalid or expired token"
}说明
- 结果按登录时间降序排列(最新优先)。
startTime和endTime须同时提供才能启用时间范围筛选;若缺少任一参数,则返回全部历史。- 每页最大 100 条。