The Better Way: nonce-only
script-src 'nonce-r4nd0m';
object-src 'none'; base-uri 'none';
Refactoring steps:
a
b
var s =
document.createElement('script');
s.src = 'dynamicallyLoadedStuff.js';
document.body.appendChild(s);
a
b
var s = document.createElement('script');
s.src = 'dynamicallyLoadedStuff.js'
s.setAttribute('nonce', 'r4nd0m');
document.body.appendChild(s);
document.getElementById('link')
.addEventListener('click', alert('clicked'));
soon