How to use cross domain postmessage and iframes?
So, on your wrong domain page, you include an iframe, which sends messages with cookie data.
Here's a compelling example of cross-domain communications: http://blog.teamtreehouse.com/cross-domain-messaging-with-postmessage
live example: http://codepen.io/anon/pen/EVBGyz // branched sender code with tiiiiiny change :):
window.onload = function() { // Get the window displayed in the iframe. var receiver = document.getElementById('receiver').contentWindow; // Get a reference to the 'Send Message' button. var btn = document.getElementById('send'); // A function to handle sending messages. function sendMessage(e) { // Prevent any default browser behaviour. e.preventDefault(); // Send a message with the text 'Hello Treehouse!' to the new window. receiver.postMessage('cookie data!', 'http://wrong-domain.com'); } // Add an event listener that will execute the sendMessage() function // when the send button is clicked. btn.addEventListener('click', sendMessage); }
Recipient Code:
window.onload=function(){ var messageEle=document.getElementById('message'); function receiveMessage(e){ if(e.origin!=="http://correct-domain.com") return; messageEle.innerHTML="Message Received: "+e.data; } window.addEventListener('message',receiveMessage); }
25r43q Nov 27 '15 at 13:00 2015-11-27 13:00
source share