Tartalomjegyzék

< Express

Express - Cache

Bevezetés

Ha az alkalmazásod gyorsan változó adatokat jelenít meg, szükség lehet a kliensoldali tárolás kikapcsolására. Ilyenek lehetnek a csevegőüzenetek, tőzsdei árfolyamok, élő sportesemények stb.

Biztonsági megfontolások miatt is kikapcsolhatók. Például gyorsan változó jogosultságok, munkamenetek egy banki rendszerben.

A fejlesztési időben is szükség lehet a változások azonnali láthatóvá válására.

Ilyen lehet a dinamikusan generált tartalom.

A cache teljes kikapcsolása azonban rontja az alkalmazás teljesítményét, és növeli a szerver terhelését.

Kliensoldali cache kikapcsolása

Telepítsük a nocache csomagot:

npm install nocache

Használat

A nocache csomagot köztes szoftverként fogjuk használni:

import nocache from 'nocache';
 
// ...
 
app.use(nocache());

Útvonalra alkalmazás

Adott útvonalra használat:

router.get('/employees', [verifyToken, nocache()], EmployeeController.store);

Ha a verifyToken sikeresen lefut, akkor alkalmazzuk a nocache()-t.

A nocache() beállítja a következő fejléceket:

Saját köztes függvény

Ez megoldható saját middleware függvénnyel is:

function nocache(req, res, next) {
  res.header('Cache-Control', 'private, no-cache, no-store, must-revalidate');
  res.header('Expires', '-1');
  res.header('Pragma', 'no-cache');
  next();
}
app.get('/employees', nocache, EmployeeController.store);