L'outil consiste à aider la communication Javascript entre une page et une iframe.
Il est composé de:
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.
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);
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);
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"]);
Le lecteur est sous licence Creative Commons BY SA