Questão FC373751
Considere o código abaixo. self.addEventListener ('install', function(event) { event.waitUntil( caches.open('my-cache').then(function(cache) { return cache.addAlll([ ´/´, '/index.h
Outros Tópicos de Desenvolvimento de Sistemas
FCC · 2023
Considere o código abaixo.
self.addEventListener ('install', function(event) {
event.waitUntil(
caches.open('my-cache').then(function(cache) {
return cache.addAlll([
´/´,
'/index.html' ,
'/styles.css',
'/script.js'
]);
})
);
}) ;
self.addEventListener('fetch', function(event) {
event.respondWith(
caches.match (event.request) .then (function(response) {
return response || fetch(event.request);
})
);
}) ;
Trata-se de um exemplo de implementação de
- Service Worker JavaScript em um Progressive Web App.
- Script de autenticação de usuário.
- Aplicativo JavaScript autônomo e executável.
- Node.js web server completo.
- Single Page Application (SPA) em uma aplicação web estática com JavaScript.
Mostrar resposta e comentário
Gabarito
A
Comentário do professor
O código implementa um Service Worker, um arquivo JavaScript registrado por uma aplicação para atuar como intermediário entre a página e a rede.
Os listeners para os eventos install e fetch são característicos: no install usa-se caches e event.waitUntil para pré-cachear recursos (comportamento útil em Progressive Web Apps), garantindo que assets essenciais fiquem disponíveis.
No evento fetch o uso de caches.match e event.respondWith permite interceptar requisições e retornar respostas em cache ou buscar da rede, possibilitando funcionamento offline e estratégias de cache personalizadas.
Service workers executam em contexto isolado (sem acesso ao DOM) e são baseados em eventos assíncronos, oferecendo controle granular sobre como a aplicação responde a falhas de rede e melhoria de performance.
Conteúdo do catálogo FC Concursos · Atualizado em