5

我正在开发用于通过互联网打开和关闭灯的小型 Web 应用程序。如果灯亮,则显示灯图像,否则显示灯图像。我正在考虑在这个过程中实现这个应用程序: 1- 我在服务器上创建一个名为 lamp.html 的 html 文件 2- 灯控制器电路每 5 秒将 http 数据发送到一个 php 服务器应用程序,该应用程序获取数据并打开灯。 html 文件并使用从灯控制器接收的新数据重写 html 文件。示例:如果灯打开,服务器应用程序将带有 ON 灯图像的图像标签写入 lamp.html 文件,依此类推。3-我从浏览器请求lamp.html文件。例如:http:mysite.com/lamp.html 该文件每 5 秒自动刷新一次。

实施的程序是否良好?我可以使用另一种方法来使用http请求进行远程控制吗?

4

3 回答 3

2

你的主要想法听起来不错,但它还有改进的空间。但首先让我们看一下总体设计:

在此处输入图像描述

为了简化您的系统,如果服务器将灯传输的最后一个值存储到一个文件中就足够了。您不需要在每次更改时呈现完整的 HTML 文件,只需修改文件中的单个字节。

另一方面,浏览器也不需要每 5 秒刷新一次整个页面。取而代之的是使用服务器发送的事件实现流更新,这样网络服务器就会在灯发生变化时真正告诉浏览器。然后浏览器可以通过 javascript 更改图像 URL 和其他内容,使其看起来更好。

于 2012-04-27T08:22:46.070 回答
0

如果我要制作一个显示灯状态的网页......

  1. lamp.html
    应该有两个 div。一张是开灯的图片,一张是关灯的图片。

  2. getLampInfo.php
    应该连接到您的灯控制器并回显 0 或 1 的数据

  3. 在 lamp.html 中编写一个 ajax 脚本,每 5 秒调用一次 getLampInfo.php 并根据响应切换 div。

我不会处理文件覆盖和东西。这一切似乎都是不必要的。不过,您的方法将起作用,并且绝对没有任何问题。

希望这可以帮助!

于 2012-04-27T08:12:03.837 回答
0

如果灯打开或关闭,我将通过 PHP 脚本查看每个页面请求,并根据结果显示图像。

<img src="/<?php echo (lamp_is_on() ? 'on' : 'off'); ?>.png">
于 2012-04-27T08:08:22.740 回答