Express 1

24. hodina DVOP WBB


Matěj Cajthaml — SSPŠ

©

Webový server

Webový server

  • server, který umí komunikovat nad HTTP
  • existují hloupé knihovny, které vytváří jen základy
  • pokročilé se starají i o hlavičky a další věci

Knihovna http v Node.js

  • knihovna http, již v instalaci Node.js
  • velmi jednoduchý server
  • musíme mít jednu velkou funkci pro celý server a nebo si napsat vlastní nástavbu

Vytvoření

Endpointy

Knihovna URL

Práce

S knihovnou HTTP se často používá URL. Zjistěte si, co tato knihovna umí a jak se používá.

Uložiště v paměti

Práce

Vytvořme Web API, které bude přijímat data a bude je uchovávat v operační paměti.

Express

Express

  • knihovna pro vytváření webového serveru nad HTTP
  • může vytvářet čisté Web API a nebo klidně server-side aplikaci
  • spousta pomocných balíčků
  • funguje na způsob middleware (více později)

Vytvoření

Co se stane, když přejdeme na adresu /aaaaaa/proc/jsou/dvopy/do/17.05?

Jak je možné, že se ukazuje automaticky HTML? Nechybí nám hlavička?

Endpointy

Metody na Response

  • .status(code)
  • .send("...")
  • .send({ aaa: "aaa" })

Co je v požadavku a odpovědi?

Práce

Podívejte se na dokumentaci Expressu a zjistěte, co je v požadavku a odpovědi.

Cesty endpointů

Cesty endpointů

  • můžeme používát spoustu matchingů
  • můžeme použít i regulární výrazy
  • povinné a nepovinné části
  • parametry

Parametry

Volání HTTP v JavaScriptu

Volání HTTP v JavaScriptu

  • můžeme použít: fetch, XMLHttpRequest, axios, ...
  • problémy s CORS (více později)

Fetch

Fronta úkolů

Práce

Vytvořte Web API, které má dva endpointy:

  • /request — dá úkol do fronty ke zpracování, vrací id
  • /:id — vrátí řešení úkolu podle id

Děkuji za pozornost!

  • matej.cajthaml@ssps.cz
  • https://ssps.cajthaml.eu/