Kaip integruoti paslaugų darbuotojus į Next.js programas

Kaip integruoti paslaugų darbuotojus į Next.js programas
Tokie skaitytojai kaip jūs padeda palaikyti MUO. Kai perkate naudodami nuorodas mūsų svetainėje, galime uždirbti filialų komisinius. Skaityti daugiau.

Aptarnavimo darbuotojai yra scenarijai, kurie veikia fone, kad šiuolaikinėms žiniatinklio programoms teiktų galingas talpyklos galimybes ir kitas funkcijas.





Kaip leisti muziką iš telefono į automobilį usb

Šios funkcijos suteikia sklandžią ir patogią savųjų programų patirtį žiniatinklio naršyklėje.





Paslaugų darbuotojai yra pagrindinis komponentas kuriant progresyvias žiniatinklio programas (PWA).





Paslaugų darbuotojų supratimas

Aptarnaujantis darbuotojas yra tam tikra rūšis JavaScript žiniatinklio darbuotojas kuri veikia fone, atskirai nuo pagrindinės „JavaScript“ gijos, kad ji neblokuotų. Tai reiškia, kad tai nesukelia vėlavimų ar trukdžių programos vartotojo sąsajai arba vartotojo sąveikai su ja.

 Nešiojamojo kompiuterio ekranas su kodu ekrane ir rašiklio laikikliu su rašikliais šone.

Paslaugų darbuotojai veikia kaip tarpiniai serveriai – sėdi tarp žiniatinklio programų ir tinklo. Jie gali perimti užklausas ir atsakymus, talpinti išteklius ir teikti palaikymą neprisijungus. Tai padeda užtikrinti, kad žiniatinklio programos būtų sklandesnės ir patogesnės vartotojui, net kai vartotojas neprisijungęs.



Pagrindinės programos paslaugų darbuotojams

Paslaugų darbuotojams yra keletas programų. Jie įtraukia:

  • PWA: Paslaugų darbuotojai suteikia daug galių progresyvioms žiniatinklio programoms. Jie atlieka pasirinktines tinklo užklausas, tiesioginius pranešimus, palaikymą neprisijungus ir greitą įkėlimą.
  • Talpykla: Paslaugų darbuotojai gali saugoti programos išteklius – vaizdus, ​​„JavaScript“ kodą ir CSS failus – naršyklės talpyklos saugykloje. Tai leidžia naršyklei juos nuskaityti iš talpyklos, o ne gauti iš nuotolinio serverio per tinklą. Dėl to turinys įkeliamas greičiau, o tai ypač naudinga vartotojams, kurių interneto ryšys yra lėtas arba nepatikimas.
  • Sinchronizavimas fone: Paslaugų darbuotojai gali sinchronizuoti duomenis ir vykdyti kitas fonines užduotis, net kai vartotojas aktyviai nebendrauja su programa arba kai programa nėra atidaryta naršyklėje.

Paslaugų darbuotojų integravimas į Next.js programas

Prieš pasineriant į kodą, tai padeda suprasti, kaip dirba aptarnaujantys darbuotojai. Yra du pagrindiniai paslaugų darbuotojų naudojimo etapai: Registracija ir aktyvinimas .





Pirmojo etapo metu naršyklė užregistruoja aptarnavimo darbuotoją. Štai paprastas pavyzdys:

const registerServiceWorker = async () => { 
  if ("serviceWorker" in navigator) {
    registration = await navigator.serviceWorker.register("/sw.js");
  }
};

registerServiceWorker();

Kodas pirmiausia patikrina, ar naršyklė palaiko paslaugų darbuotojus, o tai daro visos šiuolaikinės interneto naršyklės. Jei šis palaikymas yra, jis registruoja aptarnavimo darbuotoją, esantį nurodytame failo kelyje.





Aktyvinimo etape turite įdiegti ir suaktyvinti aptarnavimo darbuotoją, klausydami diegti ir aktyvuoti naudojant renginius „JavaScript“ įvykių klausytojai . Štai kaip galite tai pasiekti:

registration.addEventListener("install", () => { 
    console.log("Service worker installed");
});

registration.addEventListener("activate", () => {
    console.log("Service worker activated");
});

Šį kodą galite įtraukti iškart po registracijos. Jis turėtų būti paleistas iš karto po sėkmingo aptarnavimo darbuotojo registracijos proceso.