0

想象一个画布绘画工具,您可以在其中在网站上绘画和绘画,但就像聊天应用程序一样,您绘制的内容也会立即显示在您朋友的画布上。WebSockets 会更适合这个。但是由于我的网站由不支持服务器上的 JavaScript 的网络酒店托管,所以 WebSockets 不是一个选项(如果我理解正确的话)。有没有其他方法可以构建它 - 几乎可以保持 WebSockets 提供的效率?还是我唯一的好解决方案是在让我运行 JavaScript 的服务器上托管我的网站(就像 note.js 一样)?

4

2 回答 2

1

这就是你要找的http://tutorialzine.com/2012/08/nodejs-drawing-game/

于 2013-09-18T18:06:21.777 回答
0

实时共享画布数据的下一个最佳解决方案是 ajax 长轮询。简而言之,客户端向服务器发出 ajax 请求,如果服务器有新的画布数据,则返回数据,否则保持 HTTP 请求打开,直到有新数据返回。一旦返回数据,就会重复该过程。

由于我们使用的是标准的 HTTP 请求,这不会像 web-sockets 那样高效,因为每个 HTTP 请求都带有一堆不需要的标头。

更多关于长轮询 - http://en.wikipedia.org/wiki/Comet_%28programming%29

我应该补充一点,WebSockets 并不特定于 NodeJs。WebSockets 是一种可以用任何语言实现的协议。有一些库可用于以各种不同的语言使用 WebSocket,包括 PHP,我假设您的服务器支持。

于 2013-09-18T18:20:49.720 回答