node.js白板应用程序的客户端或服务器端HTML5画布渲染?

Qco*_*com 7 javascript canvas node.js socket.io html5-canvas

我在想一个小的白板web应用程序将是一个很好的方法来提高我的node.js和JavaScript技能.我在网上看到了一些,这是有道理的,因为它似乎是这种堆栈的理想选择.

然而,花点时间思考,我想知道客户端和服务器在这种Web应用程序中的角色.在节点画布上磕磕绊绊,我变得更加困惑.具体而言,客户和服务器应该负责什么?

如果服务器能够呈现到画布,它是否应该接受并验证来自客户端的输入,然后通过socket.io将其广播给所有其他连接的用户?这样,服务器就会保留一个主 -canvas元素.一旦新用户连接,服务器就必须将其客户端的画布推出 - 使其与所绘制的内容保持同步.

任何有关实施的指导 - 具体或哲学 - 都表示赞赏.

谢谢!

小智 2

我工作的一家公司使用node.js(但没有使用node-canvas)和socket.io 实现了一个白板应用程序。不幸的是,我不能给你代码,甚至不能给你一个网站,因为它还没有发布。

您的实现看起来非常相似。每当通过 socket.io 将白板绘制到(带(x,y)坐标的 JSON 数据)时,客户端就会连接到我们的服务器并更新服务器。然后,服务器更新其余客户端并保留所有 (x,y) 坐标的副本,以便新加入的客户端可以看到已经绘制的内容。

祝您的应用程序好运。我最近经常使用 Node.js 进行编程,我真的很喜欢它。