Files
Nexus/docs/changelog/2026-06-09-terminal-connecting-status.md
T
Nexus Agent dabfc128b3 feat: 浏览器 RDP、推送提示音与子机指标等多项功能
- 3389远程页 + guacd 侧车 WebSocket 桥(无 RDP 会话审计)
- 文件推送完成独立提示音,至少一台成功即播放
- 子机列表展开 CPU/内存/磁盘 sparkline 与指标采样落库
- 终端全量服务器列表、连接中状态;告警 Telegram 公网 IP
- SSH 密钥凭据 UI 简化;子机搜索未设路径筛选

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-10 01:37:32 +08:00

1.2 KiB
Raw Blame History

终端:未正式连上 SSH 前显示「连接中」

日期: 2026-06-09

摘要

此前 WebSocket onopen 即标为「已连接」,但后端仍在建立 SSH/PTY;用户看到已连接却无法输入。

修复

  • 仅收到 TERMINAL_INIT 后标为 connected 并启动计时/Ping
  • WebSocket 已开但 SSH 未就绪时保持「连接中」
  • 45s 无 TERMINAL_INIT 提示超时
  • 输入/快捷命令/清屏仅在 connected 后生效

涉及文件

  • frontend/src/composables/terminal/useTerminalSessions.ts
  • frontend/src/composables/terminal/types.ts
  • frontend/src/composables/terminal/useTerminalCmdBar.ts
  • frontend/src/components/terminal/TerminalTabBar.vue

连接变慢说明与优化(同次迭代)

体感变慢:此前 WebSocket 一开即显示「已连接」,SSH 握手在后台进行;现改为真实状态,等待时间全部计入「连接中」。

实际优化

  • 前端:创建 xterm 与 POST /auth/webssh-token 并行
  • 后端:校验通过后立即 accept WebSocket;审计/会话落库与 ssh_pool.acquire 并行

验证

  • npm run type-check
  • 打开终端:应先显示「连接中」,SSH 就绪后变「已连接」