| import express from 'express' | importuje express. |
| const app = express(); | tworzy serwer express. |
| app.listen(3000, (callback) =>{}); | nasluchuje zmiany na serwerze. Tutaj na porcie 3000 |
| app.get('/', () => {}) | Zapytanie, gdy wejdziemy np. na '/', to wykonac callback |
| req(require) | Odpowiada za to co przychodzi ze strony www |
| res(response) | Odpowiada za to co wychodzi na stronę www |
| req.hostname | reprezentuje nazwę hosta |
| req.ip | adres ip klienta, który siedzie na naszej stronie. |
| req.ips | tablica adresów IP, które po drodze były dopisywane przez kolejne serwery |
| req.method | Pozwala odczytac metodę HTTP. |
| app.all('/') | ZAWSZE się wykona, niezależnie jaki adres wpiszemy |
| req.url | odczytuje ścieżkę. |
| req.originalUrl | Jaka była pierwotna ścieżka. |
| req.path | x |
| req.protocol | czy uzytkownik korzysta z HTTP? String np. 'http' |
| req.secure | czy uzytkownik korzysta z HTTPS ? true/false |
| encodeURIComponent | generuje parametry adresu URL np. ?name="Kasia"&... |
| URLSearchParam({ param1: 'string'}); | pobiera parametry z adresu URL |
| req.query | odbiera przesłane parametry np. {imie: "Adam", "nazw..."} |
| const {name, surname} = req.query; | destrukturyzacja |
| sciezka/:zmienna1/:zmienna2 | zmienne w app.get('/hello/:zmienna1') |
| sciezka/:zmienna1? | zadziała tak jakby nie bylo zmienna1 |
| req.params np. req.params.id | obiekt, przechowujacy dane w url. |
| res.write(); | co ma zwrócić program. |
| res.end(); | co ma zwrócić + konczy wysyłanie. |
| res.send(); | dziala jak res.write + res.end / ustawia Content-Type automatycznie |
| res.json | zwraca cialo jako json |
| res.location | przekierowuje na inny adres url |
| res.sendStatus(302) | zmienia status np. z 200 na 302 |
| res.redirect() OP!!!! | przekierowuje nas na inny adres url, jak location tylko nie trzeba zmieniac statusu |
| res.redirect('..'); | przenosi do sciezki powyzej |
| res.redirect('back', 302); | cofa nas do poprzedniego url. Domyslnie cofa na '/' | 302 - kod statusu |
| Kody statusów: 301, 302, 303, 307 | x |
| res.sendFile(fileName, { root: path}) | wysyła plik podając jego ścieżkę. | root, zabezpiecza nam niechciane wejście wyżej. WAZNE!!! |
| __dirname | aktualnie otwarty katalog |
| path.join(path1, path2); | laczy sciezki |