Uncaught SyntaxError: Impossible d’exécuter ‘postMessage’ sur ‘Window’: Origine cible non valide ‘my_page’ dans un appel à ‘postMessage’

j’ai le script suivant

Page parent (pair_pixel_filter.php):

window.addEventListener("message", function(e) { $('#log').append("Received message: " + (e.data)); }, false); $('.photo-upload-btn').click(function(event) { event.preventDefault(); window.open($(this).attr("href"), "popupWindow", "width=600,height=600,scrollbars=yes"); }); 

La page de l’enfant

 $.ajax({ type: 'post', url: url, data: { base64data: dataURL }, success: function(data) { window.opener.postMessage(data, "pair_pixel_filter.php"); window.close(); } }); 

Fondamentalement ouvrir un Popup et ensuite faire quelques ajax sur pop-up et renvoyer le résultat au parent. Mais de Child je reçois cette erreur.

Uncaught SyntaxError: impossible d’exécuter ‘postMessage’ sur ‘Window’: origine cible non valide ‘pair_pixel_filter.php’ dans un appel à ‘postMessage’

Le second paramètre de postMessage est “l’origine cible”. C’est le domaine où se trouve la page, pas le nom du fichier (php).

Ce doit être quelque chose comme:

 window.opener.postMessage(data, "http://example.com"); 

Voir: https://developer.mozilla.org/en-US/docs/Web/API/Window.postMessage