Harjutus 1. REST API DEMO

  1. Teeme Töölauas või mis kus Kausta, nimetame nagu tahate

2. Teeme lahti Visual studio code, avame seal terminali ja kirjutame sinna sisse npm i express cors

3. Loome faili näiteks server.js ja kirjutame sinna sisse koodi mis on all

    JavaScript
    const express = require('express');
    const cors = require('cors');
    
    const app = express();
    
    app.use(cors());
    app.use(express.json());
    
    const widgets = [
        { id: 1, name: "Martin", age: 18 },
        { id: 2, name: "Roma", age: 20 },
        { id: 3, name: "Duvud", age: 61 }
    ];
    
    app.get('/widgets', (req, res) => {
        res.send(widgets);
    });
    
    app.get('/widgets/:id', (req, res) => {
        if (typeof widgets[req.params.id - 1] === 'undefined') {
            return res.status(404).send({ message: " Widget not found" });
        }
        res.send(widgets[req.params.id - 1]);
    }); 
    
    app.post('/widgets', (req, res) => {
        if (!req.body.name || !req.body.age) {
            return res.status(400).send({ message: "Name and age are required" });
        }
        let newWidget = {
            id: widgets.length + 1,
            name: req.body.name,
            age: req.body.age
        };
        widgets.push(newWidget);
        res.status(201).location('http://localhost:8080/widgets/' + (widgets.length - 1))
        .send(newWidget);
    });
    
    app.delete('/widgets/:id', (req, res) => {
        if (typeof widgets[req.params.id - 1] === 'undefined') {
            return res.status(404).send({ error: " Widget not found" });
        }
        widgets.splice(req.params.id - 1, 1);
        res.status(204).send();
    
    });
    
    app.listen(8080, () => {
        console.log('Server is running on http://localhost:8080');
    });
    
    

    4. Avame terminali ja kirjutame sinna sisse npm start või node <faili mida on sull>

    5. Avame Extations Visual code

    Või teeme ctrl + shift + x

    Kirjutame sisse Postman ja installime teda

    6. registreerime seal ja avame VsCode

    7. kirjutame http://localhost:8080/widgets

    saame masiivi kus admed

    8. Lisame andmed, vahetame body´s GET => POST, avame body => raw => valime JSON

    Saame:

    9. Võtame body´s flagi DELETE ja kirjutame http://localhost:8080/widgets/<näiteks “2”>

    Saame, et meie masiivis inimene kes on id:2 kustutati

    Kokkuvõtte

    Kõik kasutatud päringut töötavad