Tartalomjegyzék
Express
- Szerző: Sallai András
- Copyright © 2021, Sallai András
- Szerkesztve: 2021-2024
- Web: https://szit.hu
Az express
Az Express egy minimális és könnyen kezelhető Node.js webalkalmazás keretrendszer, ami robusztus funkciókat kínál webes és mobilalkalmazások számára.
Webhely:
Express projekt
mkdir app01 cd app01 npm init -y
Telepítsük az express csomagot:
npm install express
Lehetséges kimenet:
npm install express npm notice created a lockfile as package-lock.json. You should commit this file. npm WARN projekt01@1.0.0 No repository field. + express@4.16.4 added 48 packages from 36 contributors and audited 121 packages in 3.732s found 0 vulnerabilities
Írjuk meg a programunkat:
- index.js
const express = require('express') const app = express(); app.get('/', (req, res) => { res.send('Helló Világ!') }); app.listen(8000, () => { console.log('Példa alkalmazás port 8000') });
$ node index.js Példa alkalmazás port 8000
Böngészőbe írjuk be:
http://192.168.5.100:8000/
Generátor használata
npx express-generator --view=pug projekt01
A 8.2.0 előtt Node.js esetén csak így:
npm install -g express-generator express --view=pug projekt01
A következő könyvtárszerkezet jön létre:
projekt01/ |-bin/ | `-www |-public/ | |-images/ | |-javascripts/ | `-stylesheets/ | `-style.css |-routes/ | |-index.js | `-users.js |-views/ | |-error.jade | |-index.jade | `-layout.jade |-app.js `-package.json
Lépjünk be a projekt könyvtárába, majd telepítsük a függőségeket:
cd projekt01 npm install
A node_modules mappába, települnek a függőségek.
Indítás
MacOS és Linuxon:
DEBUG=projekt01:* npm start
Windowson:
set DEBUG=projekt01:* & npm start
Windows PowerShellben:
$env:DEBUG='projekt01:*'; npm start
Az utolsó sorban ehhez hasonlót kell lássunk:
projekt01:server Listening on port 3000 +0ms
A kezdetleges programot a 3000 porton tekinthetjük meg. Böngészőbe:
localhost:3000
Routing
Szeretnénk egy action weblapot. Készítsünk egy bejegyzést az routers/index.js fájlba:
router.get('/action', function(req, res, next) { res.send('Itt lesznek a tevékenységek'); });
Az index.js teljes kódja:
- index.js
var express = require('express'); var router = express.Router(); /* GET home page. */ router.get('/', function(req, res, next) { res.render('index', { title: 'Webes' }); }); /* action page */ router.get('/action', function(req, res, next) { res.send('Itt lesznek a tevékenységek'); }); module.exports = router;
Nézet
Készítsünk egy weblapot a views könyvtárban PUG nyelven:
- action.pug
extends layout block content h1 Tevékenységeink p Vállaljuk weblapok elkészítését p Keressen minket
Most javítsuk a routingot:
router.get('/action', function(req, res, next) { res.render('action', { title: 'Webes' }); });