Tento dokument m├┤┼że by┼ą v porovnan├ş s dokument├íciou v angli─Źtine zastaral├Ż. Aktu├ílne inform├ície n├íjdete v dokument├ícii v angli─Źtine.

Ôťľ

FAQ

Ak├║ ┼ítrukt├║ru prie─Źinkov by som mal zvoli┼ą pre svoju aplik├íciu?

Jednozna─Źn├í odpove─Ć na t├║to ot├ízku neexistuje. Odpove─Ć z├ívis├ş od rozsahu aplik├ície a t├şmu, ktor├ş na nej pracuje. Z d├┤vodu maxim├ílnej flexibility nedefinuje Express ┼żiadne pravidl├í, ─Źi obmedzenia.

Samotn├í logika pre routing a ostatn├ę ┼ípecifick├ę ─Źasti aplik├ície m├┤┼że by┼ą rozdelen├í do ─żubovo─żn├ęho po─Źtu s├║borov a organizovan├í v ─żubovo─żnej ┼ítrukt├║re prie─Źinkov, presne tak, ako v├ím to vyhovuje. Pre in┼ípir├íciu sa pozrite sa na nasleduj├║ce pr├şklady:

Existuj├║ taktie┼ż mnoh├ę roz┼í├şrenia tret├şch str├ín, ktor├ę toto zjednodu┼íuj├║:

Ako si zadefinujem model?

Samotn├Ż Express nem├í ┼żiaden koncept datab├íze. Tento koncept je ponechan├Ż na Node moduly tret├şch str├ín, ktor├ę umo┼ż┼łuj├║ pracova┼ą s takmer v┼íetk├Żmi datab├ízami.

Pre viac inform├íci├ş oh─żadom frameworku postavenom na Express-e, ktor├Ż sa zameriava na pr├ícu s modelom, nav┼ít├şvte str├ínku LoopBack.

Ako dok├í┼żem autentifikova┼ą pou┼ż├şvate─żov?

Autentifik├ícia je ─Ćal┼íia otvoren├í oblas┼ą do ktorej Express priamo nezasahuje. M├┤┼żete si zvoli┼ą ak├║ko─żvek autentifika─Źn├║ sch├ęmu, ktor├í v├ím vyhovuje. Pre jednoduch├║ meno / heslo autentifik├íciu si pozrite tento pr├şklad.

Ak├ę template enginy Express podporuje?

Express podporuje v┼íetky template enginy definuj├║ce (path, locals, callback) signat├║ru. Pre porovnanie rozhran├ş template enginov a caching-u sa pozrite na projekt consolidate.js. Templatovacie enginy, ktor├ę nie s├║ v zozname, m├┤┼żu by┼ą Express-om taktie┼ż podporovan├ę.

Ako handlova┼ą 404-ky?

V Express aplik├ícii nie s├║ odpovede 404 v├Żsledkom chyby, preto ich error-handler middleware nezachyt├ş. Toto spr├ívanie je z d├┤vodu, ┼że odpove─Ć 404 jednoducho indikuje absenciu pr├íce, ktor├║ treba vykona┼ą, in├Żmi slovami, Express vykonal v┼íetky middlware funkcie a nena┼íiel ┼żiaden routing, ktor├Ż by na dan├║ po┼żiadavku vedel odpoveda┼ą. V┼íetko ─Źo mus├şte spravi┼ą k odchyteniu 404-ky je, ┼że prid├íte nasledovn├║ middleware funkciu pod v┼íetky ostatn├ę defin├şcie:


app.use(function(req, res, next) {
  res.status(404).send('Sorry cant find that!');
});

Ako si zadefinujem error handler?

Error-handling middleware je rovnak├Żm middlewarom ako v┼íetky ostatn├ę, s jedin├Żm rozdielom a to, ┼że je vyvolan├Ż so ┼ítyrmi argumentami, namiesto troch. Jeho signat├║ra je nasledovn├í (err, req, res, next):


app.use(function(err, req, res, next) {
  console.error(err.stack);
  res.status(500).send('Something broke!');
});

Viac inform├íci├ş sa dozviete v kapitole Error handling.

Ako dok├í┼żem rendrova┼ą ─Źist├ę HTML?

Nedok├í┼że┼í! Nie je ┼żiaden d├┤vod na rendrovanie HTML pomocou res.render() funkcie. Ak m├íte konkr├ętny s├║bor, pou┼żite res.sendFile() funkciu. Ak potrebujete servova┼ą ve─ża statick├Żch s├║borov z konkr├ętneho prie─Źinka, pou┼żite express.static() middleware.