Estoy enfrentando un problema muy extraño. Estoy cargando dinámicamente Google Charts cuando los usuarios hacen clic en un botón específico. Todo funciona bien, excepto que cuando tengo videos de YouTube en mi página.
Si hago clic en los primeros 10 segundos en uno de los botones que genera un gráfico, la ejecución del gráfico se retrasa. Si espero hasta que YouTube haya terminado de cargarse, el gráfico se carga muy rápido.
Inserto mis videos así:
<iframe loading="lazy" src="https://www.youtube.com/embed/WTtyAey5NCY" width="100%" height="400px" title="YouTube432"></iframe>Al cargar mi página, veo primero las solicitudes realizadas por YouTube (¡incluso si los videos no están en la ventana gráfica!):
Esas llamadas corresponden a los videos que tengo en la página pero después de esa primera línea, recibo las siguientes llamadas:
y finalmente esto:
Cuando todos los eventos de YouTube han terminado de enviar datos, se ejecutan mis scripts. Si trato de ejecutar scripts antes del final de esos eventos, se ponen en espera hasta que se completan los eventos.
En mi CSP tengo esto:
Header set Content-Security-Policy "default-src 'self' 'unsafe-inline' 'unsafe-eval' https://*.googleapis.com https://*.googletagmanager.com https://www.google-analytics.com/ https://www.google.com https://cse.google.com https://*.gstatic.com https://www.youtube.com/"Las llamadas de YouTube no deben bloquearse, así que no sé por qué YouTube está haciendo esto, solía funcionar hace una semana. ¿Debo bloquear esas llamadas con CSP? Si es así, ¿cómo?
¿O hay algo más que deba hacer para evitar tener todas esas llamadas?
gracias laurent