CrossDomain communication

L'outil consiste à aider la communication Javascript entre une page et une iframe.

Il est composé de:

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