https://qiita.com/ryome/items/16659012ed8aa0aa1fac でexpressの大方は理解できる
なお https://qiita.com/masayasviel/items/e6bf949b81d42da27d9a は
Arduinoをブラウザから動かした話
const express = require("express");
const five = require("johnny-five");
const board = new five.Board({port:"/dev/ttyACM0"});
const app = express();
app.use(express.static("public"));
const bodyParser = require("body-parser");
app.use(bodyParser.urlencoded({extended: false}));
注 https://nodejs.keicode.com/nodejs/express-params-form.php
このミドルウェアは Content-Type が application/x-www-form-urlencoded である POST リクエストのボディ部を解析し、 リクエストオブジェクトの body プロパティにフォームデータの内容を表すオブジェクトをセットします。
let led;
board.on('ready', function() { led = new five.Led(13); } );
const message = "現在の状態:";
app.get("/", (req, res)=>{
res.render("index.ejs",{
content: message + "off",
});
});
// middlewareを経由しているのでreqのbodyにoperate要素のvalueが入っている
app.post("/", (req, res)=>{
if(req.body.operate == "on"){
led.on();
}
if(req.body.operate == "off"){
led.off();
}
res.render("index.ejs",{
content: message + req.body.operate,
});
});
const server = app.listen(3000, ()=>console.log("イエッタイガー!"));
0 件のコメント:
コメントを投稿