MDN’s new design is in Beta! A sneak peek: https://blog.mozilla.org/opendesign/mdns-new-design-beta/

API do Operador de Serviço

Esta tradução está incompleta. Por favor, ajude a traduzir este artigo.

Os servidores funcionam essencialmente como servidores proxy que se situam entre aplicativos da Web e o navegador e a rede (quando disponíveis). Destina-se a (entre outras coisas) permitir a criação de experiências offline eficazes, interceptar pedidos de rede e tomar medidas adequadas com base na existência de rede e activos actualizados residem no servidor. Eles também permitirão o acesso a notificações push e APIs de sincronização em segundo plano.

Conceitos e uso do técnico de serviço

Um trabalhador de serviço é um trabalhador movido a eventos registrado com relação a uma origem e um caminho. Ele assume a forma de um arquivo JavaScript que pode controlar a página da Web / site que está associado, interceptar e modificar solicitações de navegação e de recursos e armazenar recursos em cache de forma muito granular para lhe dar controle completo sobre como seu aplicativo se comporta em determinadas situações (Sendo a mais óbvia quando a rede não está disponível.)

Um trabalhador de serviço é executado em um contexto de trabalhador: portanto, não tem acesso DOM e é executado em um thread diferente para o JavaScript principal que alimenta seu aplicativo, por isso não está bloqueando. Ele foi projetado para ser totalmente async; Como conseqüência, APIs como XHR e Modo de navegação privada .

Observação : os funcionários de serviço ganham sobre tentativas anteriores nessa área, como AppCache porque eles não fazem suposições sobre o que você está tentando fazer e quebram quando essas suposições não são exatamente corretas; Você tem controle granular sobre tudo.

Observação : os profissionais de serviços fazem um uso intensivo de promessas , como geralmente eles Vai esperar por respostas a vir através, após o que eles vão responder com um sucesso ou ação de falha. A arquitetura de promessas é ideal para isso.

Registro

Um assistente de serviço é primeiro registrado usando o método ServiceWorkerContainer.register (). Se for bem-sucedido, o assistente de serviço será baixado para o cliente e tentará a instalação / ativação (veja abaixo) para URLs acessados ​​pelo usuário dentro de toda a origem, ou dentro de um subconjunto especificado por você.

Fazer o download, instalar e ativar

Neste momento, o técnico de serviço observará o seguinte ciclo de vida:

  1. Download
  2. Instalar
  3. Ativar

    O trabalhador de serviço é imediatamente baixado quando um usuário acessa pela primeira vez um site / página controlado por um serviço.

    Depois disso, ele é baixado a cada 24 horas ou assim. Ele pode ser baixado mais freqüentemente, mas deve ser baixado a cada 24h para evitar que os scripts ruins sejam irritantes por muito tempo.

    A instalação é tentada quando o arquivo baixado é encontrado como novo - ou diferente de um trabalhador de serviço existente (comparado com byte) ou o primeiro trabalhador de serviço encontrado para esta página / site.

    Se esta é a primeira vez que um trabalhador de serviço foi disponibilizado, a instalação é tentada e, depois de uma instalação bem-sucedida, é ativada.

    Se houver um trabalhador de serviço disponível disponível, a nova versão será instalada em segundo plano, mas ainda não ativada - neste momento ela é chamada de trabalhador em espera . Ele só é ativado quando não há mais páginas carregadas que ainda estejam usando o antigo trabalhador de serviço. Assim que não houver mais páginas ainda carregadas, o novo trabalhador de serviço ativa (se tornando o trabalhador ativo ).

    Você pode ouvir o InstallEvent; Uma ação padrão é preparar o trabalhador de serviço para o uso quando ele for acionado, por exemplo, criando um cache usando a API de armazenamento incorporada e colocando os recursos dentro dele que você deseja para executar o aplicativo offline.

    Também existe um evento activate . O ponto onde esse evento é acionado geralmente é um bom momento para limpar caches antigos e outras coisas associadas à versão anterior do seu trabalhador de serviço.

    Seu assistente de serviço pode responder a solicitações usando o evento FetchEvent. Você pode modificar a resposta a essas solicitações de qualquer maneira que você Google Tradutor para empresas:Google Toolkit de tradução para apps

Etiquetas do documento e colaboradores

 Colaboradores desta página: dicarlosdesign
 Última atualização por: dicarlosdesign,