了解如何在javascript/HTML5/NodeJS中实现客户端-服务器-客户端基础结构
Ideas how to implement a client-server-client infrastructure in javascript/HTML5/NodeJS
我目前正在做一个项目,其中基础设施必须如下所示:
[客户端 1] ----------- [服务器] ----------- [客户端 2]
客户端 1 必须激活一个按钮,这将触发服务器上的事件。然后,客户端 2 必须侦听该特定事件以显示值。
例如,客户端 1 将是一个平板电脑,带有一个简单的按钮,其 ID 为 1。
我必须能够在客户端 2 上显示,假设一台插入 linux(Raspberry Pi)机器上的电视,平板电脑上按下了按钮 ID 1。
您将如何实现该架构,仅使用HTML显示客户端1和2,javascript用于服务器和客户端之间的通信以及NodeJS作为服务器核心?
任何想法都会受到欢迎,我试图实现它,但我的逻辑在某些时候失败了! :)
您描述的似乎是实时功能。你所描述的本质上类似于聊天系统,只是更细粒度和结构化。这不是您使用什么技术来呈现它的问题,而是您用于在客户端和服务器之间进行通信的协议的问题。
通常HTTP不太适合实时应用程序。一种试图解决您遇到的问题的技术是WebSockets。NodeJS支持WebSockets,新的浏览器也支持WebSockets,因此您可以四处寻找不同的库和实现。请记住,在使用 WebSockets 协议时,您在客户端上使用的工具取决于您在服务器上使用的工具,反之亦然。
您可以以 Socket.io 为例。有关进一步的指针,您可以查看以下问题:与 Node.js 一起使用哪个 websocket 库?
许多库在 WebSocket 上提供了一个额外的抽象层,并允许您在不关心底层协议的情况下实现实时功能。其中一条评论中提到的 Meteor 框架就是这样一回事 - 它在引擎盖下使用 WebSockets 和 HTTP,具体取决于您的工作。
这完全取决于你想要多少控制权。你必须知道你想自己做多少工作,以及你想由第三方为你做多少工作。
- 客户端服务器REST API captcha实现
- 如何防止在客户端/服务器两侧对文本框进行sql注入
- 最小化在javascript中客户端/服务器之间发送的数据
- 客户端服务器常量通信PHP
- 调试器在Meteor.call(可能是客户端/服务器调试)之后停止
- 是否有一种方法可以限制要上传到客户端服务器的文件大小
- 我可以只使用JavaScript制作客户端/服务器任务管理器吗
- 使用jQuery和MVC进行客户端-服务器搜索
- C/SSL/JQuery.ajax() 客户端 - >服务器连接重置,但发送了 1 个字节
- 用于客户端-服务器通信和安全的 API 密钥
- RESTful Web 应用程序中的客户端服务器体系结构
- 使用 node.js 进行客户端服务器通信
- 节点.js游戏开发,客户端-服务器数据交换逻辑
- 合并客户端/服务器端模板引擎
- 了解如何在javascript/HTML5/NodeJS中实现客户端-服务器-客户端基础结构
- 在客户端/服务器端检索原始电影大小
- 如何扩展 EJSON 以序列化 Meteor 客户端-服务器交互的 RegEx
- Javascript 服务器端事件与 C 客户端服务器程序
- 快速客户端服务器
- 在 NodeJS 中进行客户端-服务器通信的简单方法