Удаление массива с формы html запросом с node

Есть форма запросов в html c инпутами. GET, POST работают. Файл Json просто массив. Если кто-то может, подскажите, как можно реализовать delete

Спрошу по взаимодействию node и html формы

данные при чтении с Json файла - не должны же показываться в input сами, там, где delete?

button работает же точно также, как get, post?

или я вообще не правильно подобавлял id к элементам массива?

    <!DOCTYPE html>
    <meta charset="utf-8">
    <title>My quest</title>
    </head>
    
    <body>
                 <h1><u><center>Pogoda w Kraju</u></h1>
                 <h2><u><center>Aktualizacja dannych</u></h2>
      <br>  <br>  <br>  <br>  <br>
      <center>  <form action="//127.0.0.1:8081/process_get" method="GET">
            <br>
            Location: <input type="text" name="location"> <br> <br><br>
            temperature: temperaturę w st. C
            <input type="text" name="temperature"> C<br><br>
            humidity: wilgotność powietrza w %
            <input type="text" name="humidity"> %<br><br>
            pressure: ciśnienie w hPa
            <input type="text" name="pressure"> hPa<br><br>
            <br>
            <input type="submit" value="GET">
        </form>
    
       <center> <form action="//127.0.0.1:8081/process_post" method="POST">
            Location: <input type="text" name="location"> <br> <br> <br>
            temperature: temperaturę w st. C
            <input type="text" name="temperature"> C<br><br>
            humidity: wilgotność powietrza w %
            <input type="text" name="humidity"> %<br><br>
            pressure: ciśnienie w hPa
            <input type="text" name="pressure"> hPa<br><br>
            <input type="submit" value="POST">
        </form>
        <br>
    
       <center> <form action="//127.0.0.1:8081/process_delete" method="POST">
            Location: <input type="text" id="1" name="location"><br><br>
            temperature: <input type="text" id="2" name="temperature"><br><br>
            humidity: <input type="text" id="3" name="humidity"><br><br>
            pressure: <input type="text" id="4" name="pressure"><br><br>
            <input type="submit" value="DELETE"><br>
        </form>
        
    </body>
    
    </html>
    var express = require('express');
    var app = express();
    var bodyParser = require('body-parser');
    var fs = require('fs');
    const path = require('path');
    app.use(bodyParser.urlencoded({
        extended: true
    }));
    app.use(express.static(__dirname + '/public'));
    app.post('/process_post', (req, res) => {
        // należy utworzyć nowy obiek
        const newWeather = {
            "id": 1,
            location: req.body.location,
            "id": 2,
            temperature: req.body.temperature,
            "id": 3,
            humidity: req.body.humidity,
            "id": 4,
            pressure: req.body.pressure
        };
        console.log(req.body)
            // читаем актуальные данные
        const weather = JSON.parse(fs.readFileSync("weather.json"));
        // dodać do nich nową pogodę
        weather.push(newWeather);
        // записать изменения
        fs.writeFileSync("weather.json", JSON.stringify(weather));
        res.json(newWeather);
    });
    app.use(express.static('public'));
    app.get('/process_get', function(req, res) {
        const records = JSON.parse(fs.readFileSync("weather.json"));
        const weather = JSON.parse(fs.readFileSync("weather.json"));
        res.json(weather);
    });
    // не работает
    app.post('/delete', function(req, res) {    
            
    
        fs.readFile(__dirname + "/weather.json",  function (err, data) {
                data = data.filter(x=>x.id!=req.params.id);
            delete data["weather" + req.params.id];
            console.log(data);
            fs.writeFile('weather.json', JSON.stringify(data), function (err) {
                if(err){return console.log(err);}
                res.json(weather);
            });
        });
    
    });
        
        // пример для себя фильтра
    
    var server = app.listen(8081, function() {
        var host = server.address().address
        var port = server.address().port
        console.log("Example app listening at //%s:%s", host, port)
    })

Ответы (0 шт):