CrossDomain communication
L'outil consiste à aider la communication Javascript entre une page et une iframe.
- La page de démo: http://www.neolao.com/crossdomain_test.html
- Télécharger l'outil: crossdomain_0.1.zip
Il est composé de:
- CrossDomain.js : Le javascript utilisé dans la partie application ainsi que la partie service
- mediator_tua.html : Le médiateur pour la technique TUA
- mediator_tmu.html : Le médiateur pour la technique TMU
- access_tua.html : La passerelle pour la technique TUA
Exemple
Il y a du code à exécuter dans la partie application et aussi dans la partie service. Je résume le fonctionnement de la démonstration.
Application
Voici le code qu'il y a dans l'application:
appAPI = new Object(); appAPI.info = "foo"; appAPI.serviceIsReady = function(pServiceAPI) { widget = pServiceAPI; }; appAPI.addText = function(pText) { var p = document.createElement("p"); p.innerHTML = pText; document.body.appendChild(p); }; CrossDomain.path = "crossdomain_js"; CrossDomain.createService("http://webservice.mashup.local/service_test.html", document.body, appAPI);
Service
Voici le code qu'il y a dans le service:
widgetAPI = new Object(); widgetAPI.info = "bar"; widgetAPI.serviceIsReady = function(pApplicationAPI) { app = pApplicationAPI; }; widgetAPI.addText = function(pText) { var p = document.createElement("p"); p.innerHTML = pText; document.body.appendChild(p); }; CrossDomain.path = "crossdomain_js"; CrossDomain.registerService(widgetAPI);
Communication
Maintenant, l'application peut appeler les méthodes du service de cette façon:
widget.execute("addText", ["foo"]);
Et le service peut aussi appeler les méthodes de l'application:
app.execute("addText", ["bar"]);
Licence
Le lecteur est sous licence Creative Commons BY SA