我目前正在为家庭自动化制作一个web界面。我可以开灯和关灯,但有两个单独的按钮。我想制作一个打开或关闭的按钮,并从服务器上的文件中获取其状态。文件是这样的:
1001 = 0
1002 = 1
1003 = 0
注意:左边的数字是灯的id,右边的数字是状态
当单击按钮时,将执行shell命令,并且在.txt文件中单击的id的状态会发生变化(我开始工作了)。现在,我想看到的变化,当然不需要重新加载,从所有设备打开的页面。
我可以从文件中获取内容并显示文本,但我还没有成功设置变量:1001、1002、1003,。。。到"0"或"1"
一个简单的.txt文件是正确的选择吗?
或者有没有一种方法可以测试每个特定id的状态,如果它是真的或假的,而不必设置变量?
你能帮我做这个吗?非常感谢。
您不能使用ajax/javascript直接调用shell脚本。在appache
的情况下,使用一些服务器(如appache
)和服务器端脚本语言(如PHP)(我建议安装wamp/xamp/lamp
)。您可以使用shell_exec()使用php代码调用shell脚本,也可以直接使用php文件写入函数来读取和写入文件。这个PHP文件可以通过AJAX和合适的参数轻松调用。
我为我的大学做了一个类似的项目,我使用arduino和gprs模块打开和关闭led,通过互联网将命令发送到网络服务器。
如果你对从js执行shell命令感兴趣,你需要非常特定于平台。在Windows脚本中,您可以执行以下操作:
var shell = WScript.CreateObject("WScript.Shell");
shell.Run("command here");