我正在使用 webkit+node.js 框架 app.js 开发聊天应用程序。所以我在两边都有 node.js 和桥接的 Web 浏览器环境。我想让文件传输功能有点类似于 Skype。
所以,最初的想法是:
1.将客户端连接到主服务器。
2.每个客户端都得到对方的IP。
3.在两个客户端上启动socket或websocket服务器并相互连接。
4.Sender读取文件并将其传输给receiver。
问题是:
1.我不确定一个客户是否可以“看到”另一个客户。
2.file 是二进制数据,但是 websockets 是为文本消息制作的,所以我需要某种编码/解码的东西。我考虑过 base 64,但它有 30% 的“开销”信息。所以我需要更高效的东西(以 128 为基数?)。
3.如果使用 websocket 效率不高,我应该使用 TCP 套接字吗?如果我决定使用它们会出现什么问题?