在noVNC有没有办法从服务器接收String(一个日志),这不是Frame(Screen)的一部分

时间:2013-01-25 08:04:27

标签: vnc vnc-server vnc-viewer

在noVNC中,有一种方法可以使用在websock.js中实现的api'send_string'从客户端向服务器发送字符串,我注意到有一件事就是发送字符串,这是因为它不是RFB编码的(如果不是RFB编码的话)我错了),所以在这种情况下的优势是命令可以发送到中间代理,实习生连接到VNC服务器......

现在我的查询是..有没有办法让这个中间代理将一些字符串发送回vnc客户端...意味着它不是RFB编码的,所以将以不同的方式处理@ client

提前致谢

1 个答案:

答案 0 :(得分:1)

websock.js库是websockify项目的客户端部分。 websockify的目的是在WebSockets(基于消息)和普通TCP套接字(基于流)之间建立桥梁。

websock.js提供的API是流式API,而不是基于消息的API。此外,即使使用了本身不支持二进制数据的旧WebSocket协议(Hixie),websockify / websock.js也可以将二进制数据发送/接收到远程目标。

send_string函数是一个便利函数,因此您不必在发送之前将字符串转换为数据的数组形式。数据仍然发送到最终目标(它不会被websockify拦截)。 RFB握手的开始是基于字符串的,因此noVNC在几个地方使用send_string(同样,为方便起见)。

如果您想在websock.js和websockify之间进行带外通信,那么您需要修改双方,可能是通过在每条消息中添加一个初始字节来指示它是带外信令还是带内流的一部分。它不是内置的功能。

免责声明:我制作了noVNC和websockify。