26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
+
|
console.log("[Iframe] send from Message Worker");
window.postMessage({SharedWorker: e.data}, sPath);
}
catch (e) {
console.error(e);
}
};
xGCEWorker.port.start();
console.log("[Iframe] [worker]");
console.log(xGCEWorker);
//xGCEWorker.port.start();
//console.log("Content script [port started]");
|
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
|
-
+
|
// Pour être sûr que ça vient bien de notre iframe ;)
if (!xGCEWorker && typeof oEvent.data.sPath !== "undefined" && typeof oEvent.data.sPage !== "undefined" && oEvent.data.sPage === oEvent.origin) {
console.log('[Iframe] Create the Sharedworker ', oEvent.origin);
sPathOrigin = oEvent.origin;
createSharedWorker(oEvent.data.sPath);
} else if (xGCEWorker && sPathOrigin === oEvent.origin && typeof oEvent.data.SharedWorker === "undefined") {
console.log('[Iframe] received (no SharedWorker):', oEvent, oEvent.origin);
// Les messages reçus maintenant ont un SharedWorker fonctionnel
// Les messages reçus maintenant ont un SharedWorker fonctionnel
// On transmet au SharedWorker uniquement si ça vient de la page web et on s’assure que ce n’est pas une réponse du SharedWorker.
// TODO: Établir un protocole de communication afin de traiter uniquement les messages utiles
console.log('[Iframe] exec command with SharedWorker');
xGCEWorker.port.postMessage(oEvent.data);
console.log('[Iframe] end send message to worker');
}
}
window.addEventListener("message", receivedMessageWeb, false);
console.log('[Iframe] END');
|