Visão geral
O OneSignal fornece mensagens de erro detalhadas no Console de Ferramentas do Desenvolvedor do seu navegador quando seu site tem o Web SDK ativo. Antes de solucionar problemas, verifique novamente a Configuração do Web SDK para garantir:- O snippet JavaScript do OneSignal está colocado no
<head>do seu site. - Os arquivos do service worker estão devidamente colocados na raiz e acessíveis via HTTPS.
Passos iniciais de solução de problemas
Testar em um perfil de navegador limpo
- Use a versão mais recente do Chrome ou Firefox.
- Push não funciona em modos anônimo/privado/convidado.
- Verifique a lista de navegadores suportados.
Abrir ferramentas do desenvolvedor do navegador
Tentar assinar e observar erros

Abra as ferramentas do desenvolvedor do seu navegador e inspecione para erros
Mensagens de erro comuns e soluções
Erros de service worker (403, 404)
https://www.yoursite.com/’) with script (‘https://www.yoursite.com/...’): A bad HTTP response code (403) was received when fetching the script.
Exemplo de erro de instalação de service worker
- Confirmar disponibilidade do arquivo
- Visite a URL do arquivo do service worker no navegador. Você pode encontrar o caminho no dashboard do OneSignal Settings > Push & In-app > Web.
- Caminhos de exemplo:
https://yoursite.com/OneSignalSDKWorker.jshttps://yoursite.com/push/onesignal/OneSignalSDKWorker.js
- Se estiver usando WordPress o caminho é:
https://yoursite.com/wp-content/plugins/onesignal-free-web-push-notifications/sdk_files/OneSignalSDKWorker.js
- Se estes retornarem 403/404 ou redirecionamento, sua configuração push não funcionará.
- Nomes de arquivo são sensíveis a maiúsculas e devem ser publicamente acessíveis.
Tipo MIME não suportado
- Seu service worker deve ser servido como
application/javascript. - Servir o arquivo com outro tipo MIME (ex: text/html) causará falha no registro.

Erro de tipo MIME no service worker
Redirecionamentos não são permitidos
- Arquivos do SDK OneSignal não devem redirecionar.
- Eles devem ser hospedados na mesma origem do seu site (sem domínios CDN ou proxy).

Erro de redirecionamento no console
Configuração Web Push só pode ser usada na origem correta do site
- Seu domínio atual não corresponde à URL do site configurada no dashboard do OneSignal.
- Protocolo, domínio e subdomínio devem corresponder exatamente.

Erro de incompatibilidade de origem do site
OneSignal já está definido
- O SDK é inicializado mais de uma vez, frequentemente causado pela combinação de configuração de plugin WordPress com código manual.

Erro de inicialização duplicada do SDK
Solução de problemas de web push móvel
iOS - Veja Safari Web Push no iOS para requisitos. Android - Web push funciona automaticamente em dispositivos móveis Android usando um navegador suportado.- Primeiro certifique-se de que seu site funciona no Desktop antes de testar no móvel.
- Você pode já estar assinado na web Android, mas nosso dashboard não diferencia assinantes de web móvel de assinantes de web desktop. Um assinante de web Android aparece como
Linux armv8lna coluna Device da página “Subscriptions”. - Verifique se Notificações estão habilitadas no app do navegador. Por exemplo, no Chrome nas suas Configurações Android > Gerenciador de Aplicativos > Chrome. Certifique-se de que “Mostrar notificações” está marcado.
- Limpe seu Cache. Se seu cache do navegador está cheio no móvel, isso pode não permitir mais solicitações ou assinatura.
- Alguns usuários relataram que desinstalar e reinstalar o app do navegador corrigiu um problema onde o prompt não aparecia.
Solução de problemas do Safari
-
A URL do Site definida na Configuração Safari deve ser exatamente o que você vê ao visitar o site. Por exemplo, se você vê
https://www.yoursite.comno navegador, então você deve adicionar isto ao campo de configuração. Sites www e não-www são origens diferentes. - Safari 12.1+ criou uma nova regra que usuários devem realizar alguma ação no site antes de poderem ser solicitados
- Finalmente, tente Limpar seu cache e redefinir permissões push para ver seu site como um usuário pela primeira vez e tente assinar novamente.
Ícones do Safari ou nome do site não mudando
Devido à implementação personalizada de web push do Safari, o nome do seu site e imagem do ícone são tratados como recursos estáticos baixados e armazenados localmente no computador do usuário. Novos nomes de site e novas imagens não são atualizados ou baixados. Infelizmente, qualquer pessoa assinada com esses recursos mais antigos precisará limpar seu cache e redefinir permissões push e retornar ao site para reassinar.Limpando seu cache e redefinindo permissões push
Veja Limpando seu cache e redefinindo permissões push para mais detalhes.Depurando usando Ferramentas do Desenvolvedor do Navegador
As ferramentas do desenvolvedor do navegador podem ser usadas para interagir com o web SDK na sua página web e habilitar logging ou facilmente enviar notificações de teste para você mesmo.Acessar o Console de Ferramentas do Desenvolvedor do Navegador

Acessando o console do desenvolvedor
- Chrome: Clique com o botão direito na página, clique em Inspecionar, e clique na aba Console da janela popup que abre.
- Firefox: Clique com o botão direito na página, clique em Inspecionar elemento, e clique na aba Console da janela popup que abre.
- Safari: Vá para Safari → Preferences → Advanced e certifique-se de que Show Develop menu in menu bar está marcado. Então, na sua página web, clique com o botão direito, clique em Inspecionar elemento, e clique na aba Console da janela popup que abre.
- Chrome no Android: Habilite USB Debugging, conecte seu dispositivo ao seu computador e acesse as Dev Tools com
chrome://inspect#devicesno seu navegador Chrome Desktop. - Firefox no Android: Habilite USB Debugging, conecte seu dispositivo ao seu computador e acesse as Dev Tools com
about:debuggingno seu navegador Firefox Desktop.
Habilitar logging do web SDK
undefined como resultado.Se você vê:top (veja captura de tela acima).Agora que o debug logging do nosso web SDK está habilitado, por favor feche a aba e abra uma nova aba para a mesma página (atualizar a página não é suficiente para acionar alguns dos nossos eventos do SDK). Você deve ver muita saída no Console.
Console com logs verbosos do SDK
Verificar se você está assinado
Enviar uma notificação de teste para você mesmo
- Certifique-se de que você não está bloqueando notificações no nível do sistema operacional.
- Veja Notificações Não Mostradas: Web Push.
Depurando não recebimento de notificações do Chrome
Nota: Por favor complete estes passos em ordem.Siga os passos 1 - 4 acima para tentar receber uma notificação de teste
- Para o passo #3, você está assinado? Se não, pare aqui, limpe completamente os dados do seu site seguindo estas instruções específicas, e então reassine seu site para receber notificações. Execute o passo #3 novamente após para verificar se você está realmente assinado. Ao seguir as instruções de limpar dados do site, lembre-se de fechar todas as abas do seu site ou reiniciar seu navegador, já que o Chrome impede que o armazenamento do site seja acessado até que todas as abas existentes do seu site sejam fechadas.
- Para o passo #4, você recebe uma notificação de teste? Se sim, você terminou!
Verificar a Página Delivery no seu dashboard OneSignal
Usar chrome://gcm-internals para verificar entrega de mensagem
chrome://gcm-internals.Clique no botão “Start Recording” no topo esquerdo. Certifique-se de ver “Connection State: CONNECTED”.Deixe isto aberto e envie um push para você mesmo (siga o passo #4 acima para enviar uma notificação de teste para você mesmo).Você deve ver algo no “Receive Message Log” se você recebeu.
Logging de internals GCM
- Se você não vê um “Data msg received”, então seu navegador Chrome não está recebendo a notificação de jeito nenhum. Por favor nos avise no suporte sobre isso.
- Se você vê “Data msg received” mas ainda não recebeu uma notificação, prossiga para o passo #4.
Usar chrome://serviceworker-internals para depurar service worker
chrome://serviceworker-internals.Procure por Scope: https://your-site.com.Clique em Inspect, ou Start -> Inspect, como abaixo. Uma janela popup das Ferramentas do Desenvolvedor do Chrome aparecerá.
Inspecionando o service worker
OneSignalWorker.log.trace();. Deve retornar undefined. Quaisquer mensagens do nosso service worker devem agora aparecer neste popup.Capturar saída do console e contatar suporte
- Clique com o botão direito dentro do Console.
- Selecione Save as … para exportar o arquivo de log.
- Anexe este arquivo e entre em contato com nosso suporte via chat para assistência adicional.
support@onesignal.comPlease include:- Details of the issue you’re experiencing and steps to reproduce if available
- Your OneSignal App ID
- The External ID or Subscription ID if applicable
- The URL to the message you tested in the OneSignal Dashboard if applicable
- Any relevant logs or error messages