Request, Response

Lista nagłówków HTTP

Wyświetla nagłówki przeglądarki

 app.get('/headers', (req, res) => {
   res.type('text/plain')
   const headers = Object.entries(req.headers)
    .map(([key, value]) => `${key}: ${value}`)
   res.send(headers.join('\n'))
})

Wyłączenie informacji o serwerze

app.disable('x-powered-by')

Request object

req.params - parametry routingu
req.query 
req.body
req.route
req.cookies
req.signedCookies
req.headers          - obiekt - klucze to nazwy nagłówków
req.accepts(types)   - sprawdzenie czy akceptuje dany mime
req.ip               - adres IP klienta
req.path
req.hostname
req.xhr           - boolean if ajax
req.protocol      - http / https
req.secure        - (req.protocol === 'https')
req.url           - path i querysting, może być nadpisane przez routing
req.oryginalUrl

Response obiekt

res.status(code)                    - res.status(500)
res.set(name, value)                - ust. nagłówek odpowiedzi
res.cookie(name, value, [options])  - ust. cookie 
res.clearCookie(name, [options])    - usuwa cookie 
res.redirect(status, url)           - res.redirect(301, 'https://oner.pl'), 302 default
res.send(text)                      - wysyła tekst
res.json(json)                      - wysyła jako json
res.jsonp(json)                     - wysyła jsonp
res.end(text)                       - wysyła text i kończy połączenie
res.type(mimie)                     - ustawia nagłówek Content-Type, domyślnie 'text/html'

res.format(object)                  - wysyła różne formaty w zależn od tego co akceptuje klient
  res.format({
     'text/plain': 'hallo', 
     'text/html': '<b>hi there</b>'
  }). 

res.attachment([filename])                  - ust. Content-Disposition: attachment; filename 
res.download(path, [filename], [callback])  - ust. Content-Disposition j.w. oraz wskazuje plik (path) do pobrania
res.sendFile(path, [options], [callback])   - pobiera plik i wysyła zawartość do klienta

res.links(links)                            - ustawia nagłówek Links
res.locals                                  - obj. zawiera domyślny kontekst do renderowania

res.render(view, [locals], callback)        - renderuje widok (szablon), używa skonfigurowanego silnika renderowania np. handlebears

  opcja locals nadpisuje ustawienia obiektu res.locals