将数据从服务器推送到基于Web的UI元素

我想将一堆天气传感器连接到Raspberry PI。编写读取传感器并将数据写入数据库的守护进程将成为简单的部分,因为我是系统程序员。我也想为这个设备提供一个简单的跨平台用户界面,所以我想将我的Raspberry Pi设置为一个人们可以连接到的WIFI热点,然后在浏览器中输入像'weather.local'这样的URL,到天气传感器数据不断更新的网页。即我希望传感器守护进程将更新推送到网页上。将数据从服务器推送到基于Web的UI元素

问题是我不是web开发人员。我能想到的解决方案是:

  1. Flash,因为我希望这可以在移动浏览器上工作,所以出了问题。
  2. 使用Java脚本并将HTTP请求挂起到Web服务。
  3. HTML5 socket.io大概与WebSocket相同。

如果我使用选项(2)即使它是一种轮询,我将不得不将某种形式的HTTP服务器合并到我的传感器守护进程中,并且我对如何编写该代码有一个公平的想法。但是,我的问题是关于HTML5套接字IO。我可以使用它直接连接到TCP/IP二进制套接字还是需要服务器端WebSocket库? HTML5 socket.io/WebSocket在移动浏览器上实现的范围有多广?

回答:

WebSocket通常始于HTTP上的upgrade handshake,所以您确实需要具有基本的HTTP功能。这很简单,你可以手动编码。

WebSockets基本上都支持所有现代浏览器。它并没有被广泛使用,因为在传统的HTTP服务器上建立一个很痛苦的地方,并且与许多代理混淆在一起,但这对你来说不是问题。只要客户端是最新版本的任何东西,它就可以工作。

有关选项2的说明:浏览器有native implementation of it - 这意味着您不需要在客户端上使用太多JavaScript。您只需创建EventSource对象并聆听其事件。

以上是 将数据从服务器推送到基于Web的UI元素 的全部内容, 来源链接: utcz.com/qa/266677.html

回到顶部