可控制 i/o 的 Web 终端仿真器

Web terminal emulator with control over i/o

我们正在考虑构建一个基于 Web 的 ssh 来教授 linux 新手。

但是,我们希望能够在后端终端执行之前读取输入,并在浏览器显示之前读取输出,以便根据这些在 Web 应用程序中做出决策。

我研究了 xterm.js,但不知道如何使用任何现有的基于 Web 的开源终端仿真器来启用这种控制。

知道如何开始吗?

您需要做的是创建一个类似于 attach addon 的 xterm.js 插件,但更具干预性。

在几点中,您将必须:

  1. 通过 WebSocket
  2. 连接 xterm.js 和您的后端
  3. 监听xterm.js data事件,处理后发送数据到socket
  4. message WebSocket event and process the message, before writing it to the terminal, using #write

快速浏览一下 attach addon source code 也可能很有启发性