验证状态:已源码核验、未联调;适用基线:Web
aa138d8、servicesa3e783d2;核验日期:2026-09-12
分页查询数据采集盒。本页是 http-post-main-service-main-api-device-data-acquisition-box-page-6dd5a87c 的唯一操作正本;只描述当前 Web 可达调用和服务端行为,不把源码核验称为联调。
| 页面/功能 | 角色或空间分支 | 调用证据 |
|---|---|---|
($lng).$spaceId.device.data-acquisition-box._index/route.tsx |
当前 $spaceId;前端可见性与后端授权分别校验 |
app/routes/($lng).$spaceId.device.data-acquisition-box._index/route.tsx:51 |
| 项 | 值 |
|---|---|
| operationId | http-post-main-service-main-api-device-data-acquisition-box-page-6dd5a87c |
| method + path | POST /main-service/main-api/device/data-acquisition-box/page |
| base URL | 当前 Web 使用同源相对 URL;App 的部署 base URL 未由源码固定 |
| headers | Accept: application/json;charset=UTF-8;Authorization: Bearer <token>;Content-Type: application/json |
| 序列化 | request body 由公共 wrapper 执行 JSON.stringify;没有 query 参数 |
需要有效登录态,并满足 administrator 角色或 device-data-acquisition-box:read。 Bearer、Cookie、空间切换规则见认证与空间。资源表受当前认证租户及已注入数据权限约束;请求中的 tenantId 不能替代空间切换。
| JSON 路径/参数 | JSON 类型 | 位置 | 必填 | 可空 | 默认值 | 枚举/范围/单位 | 说明 | 字段证据 |
|---|---|---|---|---|---|---|---|---|
| body | object | body | 是 | 否 | 无 | — | 数据采集盒筛选与分页对象 | 查询字段 |
current、pageSize |
number | body | Web 是 | 否 | 省略时 Java primitive 为 0 | 当前 Web 从 1 开始、页长 10 | Controller 未声明 Bean Validation | 同上 |
| JSON 路径 | JSON 类型 | 出现条件 | 可空 | 枚举/范围/单位 | 说明 | 字段证据 |
|---|---|---|---|---|---|---|
timestamp |
number | JSON 响应 | 否 | epoch 毫秒 | 响应生成时间 | ApiResult |
status |
number | JSON 响应 | 否 | 成功为 200 | 不能只看 HTTP status | ApiResult |
error/localizedError/path |
string | null | JSON 响应 | 是 | — | 成功通常为 null;失败见差异页 | ApiResult |
extraData.current/pages/size/total |
number | 成功 | 否 | 分页整数 | 当前页、总页数、页长、总数 | Controller |
data |
array<object<数据采集盒>> |
业务成功 | 否 | — | 当前页记录;空数组是成功空页 | 字段模型 |
status=200,且同时读取 data 与 extraData.current/pages/size/total 才得到完整分页结果。
按已核验契约构造的请求 JSON:
按已核验契约构造的成功响应:
按已核实权限出口构造的代表失败(HTTP status 200):
认证/权限拒绝分别适用认证失败、权限失败;参数绑定与 Bean Validation 适用请求校验,业务 ApiException 适用业务拒绝。current/pageSize 没有 Controller 级范围校验;当前 Web 发送 1 起始页和 10 条页长。 公共 Web helper 默认 15 分钟超时;写入和删除没有幂等键,超时后须先查询资源状态再决定是否重试。
无客户端长连接资源需要释放;写操作后由调用方重新读取详情或列表确认可见状态。
无已知会阻止按当前源码调用的关键证据缺口。服务端没有闭合页码/页长范围;调用方应沿用当前 Web 的正整数。未执行真实 HTTP、数据库、缓存、JMS 或部署环境联调。
| 结论 | 状态 | 仓库/基线 | 路径、符号及定位 | 内容指纹(脏文件) |
|---|---|---|---|---|
| Web 方法、路径、序列化与消费 | 已源码核验 | web aa138d8 |
app/.client/api/main/device/dataAcquisitionBoxApi.ts:35 deviceDataAcquisitionBoxPageApi;见上表 consumers |
证据文件与 HEAD 一致 |
| 权限、输入、输出和完成语义 | 已源码核验 | services a3e783d2 |
es-center-server-main-service/src/main/java/com/es/center/server/device/controller/DataAcquisitionBoxController.java:209 page;es-center-server-device-common/src/main/java/com/es/center/server/device/service/DataAcquisitionBoxService.java:112 page |
证据文件与 HEAD 一致 |
| JSON 字段与时间类型 | 已源码核验 | services a3e783d2 |
本资源族字段模型 | 证据文件与 HEAD 一致 |
| 清单归属 | 已重新比对 | inventory | .scratch/institutional-app-api-docs/inventory/operations.json |
SHA-256 b5cce137b4fc602840fdbe74c99d90667b3e581815bddc709e263ffcc64e00f9(工作树仅格式化漂移) |
| 真实部署联调 | 未执行 | — | 未发送请求、未连接数据库/缓存/JMS/文件服务 | — |