Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
1. Servisní pracovníci: Toto je základný kameň offline schopností PWA. Služobní pracovníci sú skripty, ktoré bežia na pozadí, nezávisle od webovej stránky, čo im umožňuje zachytiť požiadavky na sieť a spracovať ich, aj keď aplikácia nie je aktívne otvorená v prehliadači. Môžu:
* vyrovnávacie aktíva: Služobní pracovníci môžu vyrovnávať statické aktíva ako HTML, CSS, JavaScript, obrázky a písma. Ak je používateľ offline, servisný pracovník môže slúžiť týmto vyrovnávacím aktívam priamo z vyrovnávacej pamäte prehliadača, čím zabráni zlomeniu aplikácie. Stratégie, ako sú ukladanie iba na ukladanie do vyrovnávacej pamäte, pamäť, prvé siete a Stale-While-Revalidate poskytujú rôzne úrovne kontroly nad tým, ako sa používajú zdroje uložené v pamäti cache.
* Poprave požiadavky na sieť: Služobný pracovník môže zachytiť požiadavky na údaje z API alebo iných sieťových zdrojov. Ak je používateľ offline, môže vrátiť odpovede na uložené v pamäti. Ak je online, môže načítať údaje zo siete a aktualizovať vyrovnávaciu pamäť.
* Odpovedajte na upozornenia na push: Služobní pracovníci povoľujú upozornenia na push, aj keď aplikácia nie je otvorená, čo umožňuje informovať používateľa o aktualizáciách alebo novom obsahu dokonca offline. Samotné oznámenie sa však zobrazí, keď používateľ pôjde online.
2. IndexedDB: Toto je API na databáze na strane klienta, ktoré umožňuje PWAS lokálne ukladať údaje do zariadenia používateľa. Je to ideálne na ukladanie údajov o aplikáciách, preferenciách používateľa alebo akéhokoľvek dynamického obsahu, ktorý potrebuje pretrvávať medzi reláciami alebo v offline. To dopĺňa ukladanie ukladania ukladaním údajov špecifických pre aplikáciu.
3. Stratégie ukladania do vyrovnávacej pamäte: Efektívne ukladanie do vyrovnávacej pamäte je rozhodujúce. PWA používajú rôzne stratégie ukladania do vyrovnávacej pamäte na vyváženie čerstvého obsahu s dostupnosťou offline. Stratégie ako:
* cache-first: Najprv slúžte v cache reakcii. Načítať zo siete iba vtedy, ak je reakcia uložená uložená ukladaná alebo chýbajúca.
* siete First: Najskôr načítať zo siete. Vyrovnávacia pamäť odpoveď na neskoršie použitie.
* stale-while-revalidate: Podávajte v pamäti cache reakciu a súčasne vyzdvihnite čerstvú odpoveď zo siete. To zaisťuje, že používateľ vždy vidí najnovší obsah a zároveň poskytuje rýchly offline zážitok.
4. Priblíženie offline: Niektoré PWA sú navrhnuté s filozofiou „offline-first“. To uprednostňuje prístup offline a považuje offline funkčnosť za primárne správanie. Aplikácia bude fungovať podľa očakávaného offline a všetky funkcie iba online sa považujú za doplnky, nie požiadavky.
Príklad implementácie (koncepčné využívanie servisného pracovníka):
`` `JavaScript
// vo vašom servisnom pracovníku:
self.addeventListener ('install', (event) => {
event.Waitaltil (
caches.open ('my-cache'). Potom ((cache) => {
návrat cache.addall ([
'/',
'/index.html',
'/styles.css',
'/script.js',
// ... iné aktíva
]);
})
);
});
self.addeventListener ('načítať', (event) => {
event.rendesswith (
caches.match (event.Request) .Then ((response) => {
Odpoveď návratu || fetch (event.Request); // stratégia Cache-First
})
);
});
`` `
Tento jednoduchý príklad ukazuje, ako vyrovnávať statické aktíva. Zložitejšie stratégie si vyžadujú starostlivé zváženie stratégie ukladania do vyrovnávacej pamäte, správu údajov a riešenie potenciálnych konfliktov medzi reakciami na uložené a sieťové reakcie. Sofistikovanosť offline skúseností bude závisieť od zložitosti aplikácie a výberu implementácie vývojára.