oktatas:web:express:koeztes_szoftver_es
Ez a dokumentum egy előző változata!
Tartalomjegyzék
Köztes szoftver ES
- Szerző: Sallai András
- Copyright © 2025, Sallai András
- Web: https://szit.hu
Bevezetés
Amit megtehetünk egy köztes szoftverben:
- Ellenőrizhetjük az érkező adatokat.
- A köztes szoftverben átírhatjuk a klienstől érkező tartalmat.
- Elindíthatjuk a választ megszakítva a normál végrehajtást.
Egyszerű köztes szoftver
Készítsünk egy egyszerű Express API alkalmazást:
Köztes szoftver:
- app/mid.js
const valt = (req, res, next) => { console.log('váltás...'); next(); } export default valt
A köztes szoftver használata az egyszerű alkalmazásban:
- app/index.js
import express from 'express'; const app = express(); const port = 8000; import valt from './mid.js'; app.get('/valami', valt, (req, res) => { res.json({ message: 'Helló' }); }) app.listen(port, () => { console.log(`Example app listening on port ${port}`); });
Ellenőrzés:
res localhost:8000/valami
Több köztes szoftver
Két köztes szoftver létrehozása:
- app/mid.js
const valt1 = (req, res, next) => { console.log('váltás 1 ...'); next(); } const valt2 = (req, res, next) => { console.log('váltás 2 ...'); next(); } export { valt1, valt2 };
Két köztes szoftvert tömbben kell megadni az szerveren a végpont számára.
- app/index.js
import express from 'express'; const app = express(); const port = 8000; import { valt1, valt2 } from './mid.js'; app.get('/valami', [valt1, valt2], (req, res) => { res.json({ message: 'Helló' }); }) app.listen(port, () => { console.log(`Example app listening on port ${port}`); });
Ellenőrzés:
res localhost:8000/valami
A post metódus
A köztes szoftvert általában olyan adatokon használjuk amik a kérésben érkeznek.
- app/mid.js
const valt1 = (req, res, next) => { console.log('váltás 1 ...'); console.log('Ezt írtad: ', req.body); next(); } export { valt1 };
- app/index.js
import express from 'express'; const app = express(); const port = 8000; import { valt1 } from './mid.js'; app.use(express.json()); app.post('/valami', valt1, (req, res) => { res.json({ message: 'Helló' }); }) app.listen(port, () => { console.log(`Example app listening on port ${port}`); });
Ellenőrzés:
res post localhost:8000/valami name=Valaki
Felhasználónév ellenőrzése
A köztes szoftvert általában olyan adatokon használjuk amik a kérésben érkeznek.
- app/mid.js
const valt1 = (req, res, next) => { if(req.body.name != 'Pali') { return res.status(400).json({ message: 'Nem felel meg!' }); } next(); } export { valt1 };
Ha a név nem megfelelő elindítjuk a választ 400-as válasszal.
Használat:
- app/index.js
import express from 'express'; const app = express(); const port = 8000; import { valt1 } from './mid.js'; app.use(express.json()); app.post('/valami', valt1, (req, res) => { res.json({ message: 'Helló' }); }) app.listen(port, () => { console.log(`Example app listening on port ${port}`); });
Ellenőrzés:
res post localhost:8000/valami name=Pali
res post localhost:8000/valami name=János
Tartalom átírása
- app/mid.js
const valt1 = (req, res, next) => { req.body.name = 'Árpád' next(); } export { valt1 };
- app/index.js
import express from 'express'; const app = express(); const port = 8000; import { valt1 } from './mid.js'; app.use(express.json()); app.post('/valami', valt1, (req, res) => { res.json({ message: 'Tartalom: ' + req.body.name }); }) app.listen(port, () => { console.log(`Example app listening on port ${port}`); });
Ellenőrzés:
res post localhost:8000/valami name=Pali
oktatas/web/express/koeztes_szoftver_es.1755868770.txt.gz · Utolsó módosítás: 2025/08/22 15:19 szerkesztette: admin