Maison >interface Web >js tutoriel >Comment résoudre « SecurityError : empêche une trame avec origine d'accéder à une trame d'origine croisée » ?
Politique de même origine , une mesure de sécurité critique, empêche les scripts d'accéder aux trames d'origines différentes (protocole, nom d'hôte ou port). Cette erreur se produit lors de la tentative d'accès à des éléments d'une iframe dont l'origine ne correspond pas.
L'accès direct à JavaScript est interdit par la politique de même origine. Cependant, si vous contrôlez les deux pages, envisagez window.postMessage pour la communication entre domaines :
Page principale :
frame.contentWindow.postMessage(data, 'https://second-site.example');
Iframe Page :
window.addEventListener('message', event => { if (event.origin === 'https://first-site.example') console.log(event.data); });
Dans des cas exceptionnels, vous devrez peut-être désactiver la politique. Cependant, cela est fortement déconseillé pour des raisons de sécurité.
Pour certains navigateurs, des instructions de désactivation peuvent être trouvées ici :
N'oubliez pas que la désactivation de la stratégie de même origine affecte uniquement votre navigateur et présente des risques de sécurité importants.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!