Referência rápida

Folha de Cola Alternativas ao Polyfill.io e Detecção de Recursos

Guia de referência para carregamento de polyfills: alerta de segurança sobre o ataque à cadeia de suprimentos do polyfill.io, substituição via Cloudflare cdnjs e carga condicional.

· Publicado

[!CAUTION] Alerta crítico de cadeia de suprimentos: O domínio original polyfill.io foi adquirido por terceiros e usado ativamente em ataques de injeção de malware. Remova imediatamente todas as referências a polyfill.io de todas as bases de código em produção.

Alternativa Segura na CDN da Cloudflare

Cloudflare e cdnjs hospedam um espelho isolado e verificado da biblioteca polyfill pronto para substituição direta:

<!-- Substituição direta segura fornecida pela Cloudflare -->
<script src="https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js"></script>

Carregamento Condicional de Recursos

Para evitar carregar polyfills em navegadores modernos que já suportam APIs ES6+ nativamente, faça detecção de recursos inline antes de injetar scripts:

<script>
  if (!(window.Promise && [].includes && Object.assign && window.Map)) {
    var script = document.createElement('script');
    script.src = 'https://cdnjs.cloudflare.com/polyfill/v3/polyfill.min.js';
    document.head.appendChild(script);
  }
</script>

Abordagem Moderna Recomendada: Core-JS e Empacotadores

O desenvolvimento frontend moderno empacota polyfills durante a compilação (via Vite, Webpack ou Babel) em vez de carregar scripts externos em execução:

npm install core-js

No ponto de entrada da sua aplicação (index.js):

import 'core-js/stable';

Referências

Temas relacionados