你能用 JavaScript 控制你家外面的一个单元吗?例如关闭一个Raspberry Pi 3 网页上的按钮"Shut down"

Can you control a unit outside your home with JavaScript? For example, shut down a Raspberry Pi 3 with the button "Shut down" on a web page

几年前我做了一个 UI 使用 7 英寸触摸屏连接到 Raspberry Pi 3.

我有一个数字按钮“关闭”,它可以完美地使用 Java 向 Raspberry 发送消息(参见下面的代码)。

try {
    Runtime.getRuntime().exec("sudo shutdown -h now");
} catch (IOException e) {
    e.printStackTrace();
}

现在我想使用 JavaScript 在网页上使用“关闭”按钮关闭 Raspberry Pi 3。所以我假设我需要授予 Web 服务器权限,然后将此消息 sudo shutdown -h now 发送到 Raspberry。有什么建议吗?

如果要使用服务器端JavaScript,则需要使用Node.js。
像这样:

var express = require('express')
var app = express()
const { exec } = require("child_process");

// when navigating to your http://<yourdomain>/shutdown
app.get('/shutdown', function (req, res) {
  exec("sudo shutdown -h now", (error, stdout, stderr) => {
    if (error) {
        console.log(`error: ${error.message}`);
        return;
    }
    if (stderr) {
        console.log(`stderr: ${stderr}`);
        return;
    }
    console.log(`stdout: ${stdout}`);
  });
})