requestReason.js 1.3 KB

123456789101112131415161718192021222324
  1. /**
  2. * 请求失败原因词汇(票 05 从 services/cockpitApi.js 提到 domain)。
  3. *
  4. * 提上来的理由:分区状态(domain/sectionState.js)要按失败原因判定「数据不可用」还是「加载失败」,
  5. * 而 domain 不该反过来 import service——那会形成 domain → service → domain 的层次倒挂。
  6. * 词汇属于领域,怎么发请求属于服务,所以常量放这里。
  7. *
  8. * 兼容:`services/cockpitApi.js` 仍然对外导出 `REQUEST_REASON`(转出本模块),
  9. * 票 04 的断言脚本与既有调用点因此不需要改。
  10. */
  11. /** 失败原因。分区据此决定「数据不可用」措辞(见 domain/configStatus.js)。 */
  12. export const REQUEST_REASON = {
  13. NO_BASE_URL: 'no-base-url',
  14. MOCK_MISSING: 'mock-handler-missing',
  15. UNAUTHORIZED: 'unauthorized',
  16. UNAVAILABLE: 'unavailable',
  17. UNREACHABLE: 'unreachable',
  18. BAD_PAYLOAD: 'bad-payload',
  19. // 票 08:地图摘要分页自带的失效态。后端在「第 2 页起没带快照」或「带的快照与当前不一致」时
  20. // 回 400 + `CockpitErrorCategory.SNAPSHOT_EXPIRED`(`CockpitMapSnapshotService`)。
  21. // 它是可恢复的业务态而不是链路失败:界面要说「请刷新」,不能笼统报「加载失败」。
  22. SNAPSHOT_EXPIRED: 'snapshot-expired',
  23. }